?
Solved

write to file problem

Posted on 2000-02-18
6
Medium Priority
?
350 Views
Last Modified: 2012-05-04
Referring to the code below
I have to run the code like
app.exe 1 23 8
so the value
argv[1] = 1
argv[2] = 23
argv[3] = 8
so what is the following code to and up let say add up
a) first two value  
b) add all value

and write the two calculate value to a file

THANX IN ADVANCE



#include <iostream.h>
#include <stdio.h>
#include <string.h>

int main( int argc, char *argv[], char *envp[] )
{
    char input[9];FILE *stream;
    int iNumberLines = 0;    // Default is no line numbers.
    // If more than .EXE filename supplied, and if the
    // /n command-line option is specified, the listing
    // of environment variables is line-numbered.

    if( argc == 2 && stricmp( argv[1], "/n" ) == 0 )
        iNumberLines = 1;

    // Walk through list of strings until a NULL is encountered.
    for( int i = 0; envp[i] != NULL; ++i )
    {
        if( iNumberLines )
            cout << i << ": " << envp[i] << "\n";
    }
}

0
Comment
Question by:winson
  • 3
  • 3
6 Comments
 
LVL 22

Expert Comment

by:nietod
ID: 2535770
We cannot provide answers to school assignments.  That is grounds for removal from this site.  (for both you and the experts involved.)  We can provide only limitied help in accademic assignments.    We can answer specific (direct) questions, like you might ask your teacher.  We can review your work and post suggestions, again, like your teacher might do.

Do you have specific questions?
Do you have any work on this (incomplete even) that we can review?
0
 
LVL 22

Expert Comment

by:nietod
ID: 2535773
I'll tell you this much for now.

To write a number to a file you need to use an fstream object like so

#include <fstream>
using namespace std;

int main()
{
   fstream File("thefilename",ios_base::out);
   int X = 5;

   File << X;
}
0
 
LVL 22

Expert Comment

by:nietod
ID: 2535798
A bit more.  The values to be added together are specified as parameters to the program in the argv[] array.  This means the values are all character strings.  i.e they are characters that express the value, not the binary representation of the value.  i.e. the values are expresed like

char *AValue = "1999";

not like

int x = 1999;

The computer can't do math on a string anymore than you can do math like
  "one + "five"

The strings need to be converted to the integer values they represent.  (like you would convert "two" to 2).  This can be done using the atoi() function.

If that doesn't help enough, try to ask more specific questions.
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
LVL 14

Accepted Solution

by:
AlexVirochovsky earned 300 total points
ID: 2535802
Next is code:
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main( int argc, char *argv[])
{
    int lpN[3];
    FILE *stream;
    memset(lpN, 0, sizeof(lpN));
    // If more than .EXE filename supplied, and if the
    // /n command-line option is specified, the listing
    // of environment variables is line-numbered.

    // Walk through list of strings until a NULL is encountered.
    for( int i = 1; i < argc; i++ )
     {
        cout << i << ": " << argv[i] << "\n";
        lpN[i-1] = atoi(argv[i]);
     }
    stream = fopen ("mtfile.txt","wt");
    if (stream)
      {
        fprintf(stream, "%d\n", lpN[0] + lpN[1]);
        fprintf(stream, "%d\n", lpN[0] + lpN[1] + lpN[2]);
        fclose(stream);
      }
}
I hope, it helps. Alex
0
 
LVL 14

Expert Comment

by:AlexVirochovsky
ID: 2535811
O , i see, nietod think , that it is hopework!
Winson, is it true?
0
 
LVL 14

Expert Comment

by:AlexVirochovsky
ID: 2540178
nu, after 'd', i see, that it is really
homework...
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Unlike C#, C++ doesn't have native support for sealing classes (so they cannot be sub-classed). At the cost of a virtual base class pointer it is possible to implement a pseudo sealing mechanism The trick is to virtually inherit from a base class…
This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.
Suggested Courses

609 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question