我是C编程的初学者我有一个文本文件,其中有100万个素数用空格分隔 . 我想把它们放在一个int数组primes []中 . 以下是我写的代码:
int main()
{
ifstream infile;
infile.open("C:/Users/DELL/Desktop/primes1.txt");
//check for error
if(infile.fail()){cerr<<"Error Opening File"<<endl;
exit(1);}
int i=0;
primes = new int[1000001];
while(i != infile.eof()){
infile>>primes[i];
i++;
}
cout<< primes[4] <<endl;
return 0;
}
当我构建并运行时,它会出现以下错误:
“错误:'primes'未在此范围内声明”
这是什么解决方案?
3 回答
我强烈建议在堆上使用向量而不是数组来防止资源泄漏:
C很漂亮,它的库里有很好的东西,允许你以高级,简洁,声明的方式做到这一点:
声明
primes
. 必须首先声明标识符才能为其分配内容 .例如: