i have written program takes filename argv[1] , operations on . when debugging visual studio pass filename project options>>debugging>>command arguments , works fine , prints results correctly .
but when trying command prompt , go dir of project/debug type
program it works fine , prints "no valid input file" in same window (which error handling technique)
but when type
program test.txt it nothing . think no problem in code because works fine debugger .
code :
int main(int argc, char *argv[]) { int nlines; string str; if(argv[1]==null) { std::cout << "not valid input file" << endl; return 0 ; } ifstream infile(argv[1]); getline(infile,str); nlines = atoi(str.c_str());//get number of lines for(int line=0 ;line < nlines;line++) { //int currtime , , lot of variables .. //do lot of stuff , while loops cout << currtime <<endl ; } return 0 ; }
you don't check if file opened, whether getline returned error code or not, or if string integer conversion didn't fail. if of error occur, guess case, nlines equal 0, no cycles performed , program exit return code 0.
Comments
Post a Comment