好了,所以我想打開一個文件進行閱讀,並且我只想讀取第一個字符,然後根據我將它發送給給定函數的那個字符。例如,如果它是一個數字,我把它發送到一個函數,繼續閱讀,看看它只是一個int或一個浮點數。 我似乎無法弄清楚如何做到這一點逐字讀取fstream並將fstream傳遞給函數以供進一步讀取?
void dummy(char dum, std::ifstream& fin){
char test = dum;
fin>>test;
string simple = simple + test;
simple = simple + test;
ofstream outFile;
outFile.open("output.txt");
outFile<<simple<<"\n";
return;
}
int main(int argc, char *argv[]){
char c;
//ifstream readFile;
/*if(argc >= 1){
readFile.open(argv[1]);
}*/
ifstream readFile;
readFile.open("input.txt");
readFile.unsetf(ios_base::skipws);
readFile>>c;
while(!readFile.eof())
{
switch(c){
case 'a':
dummy(a,readFile);
}
}
}
它不斷拋出這個錯誤:Microsoft C++異常:性病:: bad_alloc的內存位置(位置)。任何幫助是極大的讚賞。
'string simple = simple + test;'根本沒有意義。 – us2012 2013-02-10 04:54:15
我想把'std :: ifstream :: eof()'放到一個寒冷而黑暗的山溝裏,沒有一個沒有十幾年行業經驗的人可以找到它。 – WhozCraig 2013-02-10 05:41:51
'dummy(a,readFile);' - 你是否想要傳遞變量'c'? – 2013-02-10 06:28:02