User forums > Help
Cant open the input file
betterlife:
Hello!
I learn C++ Stephen Prata books. I have a problem(probably) with a CodeBloks setting, the compiler cant open the input file which is the same folder as program.
PS: sorry for my English
--- Code: ---#include <iostream>
#include <fstream>
#include <cstdlib>
const int SIZE = 60;
using namespace std;
int main()
{
char filename[SIZE];
ifstream inFile;
cout << "Enter name of data file: ";
cin.getline(filename, SIZE);
inFile.open(filename, ios::in | ios::out);
if (!inFile.is_open());
{
cout << "Could not open the file " << filename<< endl;
cout << "Program terminating \n";
exit(EXIT_FAILURE);
}
double value;
double sum = 0.0;
int count = 0;
inFile >> value;
while (inFile.good())
{
++count;
sum += value;
inFile >> value;
}
if (inFile.eof())
cout << "End of file reached\n";
else if (inFile.fail())
cout << "Input terminated by data \n";
else
cout << "Input terminated for unknown reason \n";
if (count == 0)
cout << "No data processed \n";
else
{
cout << "Items read: " << count << endl;
cout << "Sum: " << sum << endl;
cout << "Average " << sum /count << endl;
}
inFile.close();
return 0;
}
--- End code ---
oBFusCATed:
Project -> Properties -> Your build target -> Set a correct working directory...
betterlife:
What do you mean?
oBFusCATed:
Execution working dir should be set correctly. Yours seems to be. No idea why your code doesn't work. Use a debugger to find out. As a start try with absolute paths.
betterlife:
I found the problem but I dont know how it works. If I removed this chceck point the program would work corect
--- Code: --- if((inFile.good() == true));
{
cout << "Could not open the file " << filename<< endl;
cout << "Program terminating \n";
exit(EXIT_FAILURE);
};
--- End code ---
Do you have an idea where to find a solution? I read the documentation(C++) and did not find an answer
Navigation
[0] Message Index
[#] Next page
Go to full version