C++的新手,我正在尝试创建一个统计程序来练习编码.我希望得到一个文本文件,读取它并将值存储到我可以执行数学运算的数组中.我被困在这里
main ()
{
char output[100];
char *charptr;
int age[100];
ifstream inFile;
inFile.open("data.txt");
if(!inFile)
{
cout<<"didn't work";
cin.get();
exit (1);
}
inFile.getline(output,100);
charptr = strtok(output," ");
for (int x=0;x<105;x++)
{
age[x] = atoi(charptr);
cout<<*age<<endl;
}
cin.get();
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我试图将主题年龄存储到int数组'age'中,将年龄保存在文件的第一行.我打算像上面提到的那样使用strtok,但是我无法将令牌转换为数组.
你可以清楚地看到,我是一个完整的菜鸟请跟我一起,因为我自己学习这个.:)
谢谢
PS:我已经读过类似的线程,但我无法按照那里给出的详细代码.
我陷入了简单的矢量输入和输出操作.编译器返回错误'std :: outof range'
这是代码
int main()
{
int size;
cout <<"Enter size of vector\n";
cin>>size;
cout<<"Now to input the vector of size "<<size<<endl;
vector <int> trial;
for (size_t i=0;i<size;++i){
int x;
cout<<"write at position"<<trial.at(i)<<'t';
cin>>x;
trial.push_back(x);
cout<<endl;
}
ostream_iterator<int> output(cout,"");
copy(trial.begin(),trial.end(),output);
}
Run Code Online (Sandbox Code Playgroud)
我将很感激对该问题内部运作的简要解释.