我是 C++ 的新手,目前使用的是 visual studio。
我在许多在线教程中看到,当使用 ifstream 读取文件时,在我们cout 循环遍历每一行的内容之前,我们写入当前的内容行到 char data[] var 然后 cout 数据。
类似下面的内容
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
ifstream f("D:\\file1.txt");
char a[80];
while(!f.eof())
{
f >> a;
cout << a << endl;
}
return(0);
}
有什么意义
char a[80];
...
f >> a;
cout << a << endl;
当我们可以做的时候
cout << f << endl;
并节省声明一个字符和浪费更多的代码行?
最佳答案
C++ 中的首选方法是:
#include<iostream>
#include<fstream>
int main()
{
std::ifstream f("D:\\file1.txt");
if( f )
{
std::string line;
while(getline(f, line) )
{
std::cout << line << endl;
}
}
return 0 ;
}
如果要复制或列出文件,请使用操作系统命令。操作系统命令针对处理文件进行了更优化。此外,它们已经存在并经过测试,因此您不会浪费时间。
关于c++ - 在打印之前将内容存储在内存中的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28099056/