我的代码是:(使用Atom)请注意,所有错误均已删除,但输出错误。在问题末尾提到输出。
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
char ch ;
int a, arr[2], i=0;
ifstream f(“num.txt”);
while(!f.eof())
{
f>>ch;
arr[i]=a;
}
f.close();
for(int i = 0 ; i<3 ; i++)
{
cout<<a[i]<<'\n';
}
return 0;
}
'num.txt'的数据是'123'
Error:
C:\Users\sy304\Documents\CPP\num_text.cpp:10:14: error: stray '\342' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp:10:15: error: stray '\200' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp:10:16: error: stray '\234' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp:10:24: error: stray '\342' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp:10:25: error: stray '\200' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp:10:26: error: stray '\235' in program
ifstream f(“num.txt”);
^
C:\Users\sy304\Documents\CPP\num_text.cpp: In function 'int main()':
C:\Users\sy304\Documents\CPP\num_text.cpp:10:17: error: 'num' was not declared in this scope
ifstream f(“num.txt”);
^~~
C:\Users\sy304\Documents\CPP\num_text.cpp:19:14: error: invalid types 'int[int]' for array subscript
cout<<a[i]<<'\n';
^
我是Atom的新手,无法解决这些错误。
输出:
51
1982955789
859839168
您正在索引变量a,它是一个整数,而不是数组。另外,在while循环中,您仅访问数组arr的第一个元素(因为i为0),并且始终设置a的值,该值未在任何地方设置。阅读ch后,应检查f.fail()或至少执行类似的操作