1
我写这个函数,拷贝一个文件的内容到另一个。我在while循环中使用getline()函数。不知何故,编译器给我一个错误。你知道为什么吗? 这里是我的代码:函数getline()错误
#include<iostream>
#include<cstdlib>
#include <fstream>
using namespace std;
// Associate stream objects with external file names
#define inFile "InData.txt" // directory name for file we copy from
#define outFile "OutData.txt" // directory name for file we copy to
int main(){
int lineCount;
string line;
ifstream ins; // initialize input object an object
ofstream outs; // initialize output object
// open input and output file else, exit with error
ins.open("inFile.txt");
if(ins.fail()){
cerr << "*** ERROR: Cannot open file " << inFile
<< " for input."<<endl;
return EXIT_FAILURE; // failure return
}
outs.open("outFile.txt");
if(outs.fail()){
cerr << "*** ERROR: Cannot open file " << outFile
<< " for input."<<endl;
return EXIT_FAILURE; // failure return
}
// copy everything fron inData to outData
lineCount=0;
getline(ins,line);
while(line.length() !=0){
lineCount++;
outs<<line<<endl;
getline(ins,line);
}
// display th emessages on the screen
cout<<"Input file copied to output file."<<endl;
cout<<lineCount<<"lines copied."<<endl;
ins.close();
outs.close();
cin.get();
return 0;
}
谢谢您的帮助。
编辑:对不起,这里有错误: 1.“错误C3861:‘函数getline’:标识符找不到” 2.“错误C2679:二进制‘< <’:没有操作员发现它接受一个右手类型'std :: string'的操作数(或者没有可接受的转换)“
不要让我们猜编译器错误 – antlersoft
什么是确切的编译器错误和上线? – Nobody
什么错误和哪行代码?我试着用ideone,它似乎编译得很好:http://ideone.com/BO7tY –