谁能给小弟解释下这句话的含义?
我从钱能的书上看到了有关文件流的例子,有一个是求素数的,如下:
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
void main()
{
vector <int> prime(10000,1);
for(int i=2;i <100;i++)
if(prime[i])
for(int j=i;i*j <10000;j++)
prime[i*j]=0;
ifstream in( "a.txt ");
======================================================================
for(int a;in> > a && a> 1 && a <10000;)
cout < <a < < "is " < <(prime[a]? " ": "not ") < < "a prime.\n ";
=========================================================================
}
但是不明白虚线中的那句是什么意思,是怎样工作的,请各位大哥帮忙解释下?
[解决办法]
if(in> > a && a> 1 && a <10000)
差不多等价于
in > > a;
if (in.good() && a > 1 > > a < 10000)
[解决办法]
for(int a;in> > a && a> 1 && a <10000;)
int a; //定义变量a
in> > a //从文件读入a
a> 1 && a <10000; //a得在2到9999之间
总之,for循环从文件读入数字,并打印它是否为素数。
如果读到文件结尾或a超过了允许范围,则退出循环
[解决办法]
强烈支持楼上
[解决办法]
看样子你要建立一个文件a.txt在你的程序可执行文件.exe同个目录下。然后输入一些数字,以分割符分开。这样才能有结果。
因为ifstream是从这个文件构造的。