首先,我是C ++的初学者,请怜悯。我找不到答案。
嗨,我正在尝试写一名翻译。当我尝试这个时,我选择'\ n'作为行终止符:
#define __TEST__ 1
while(Source >> Word){ //Source is file descriptor. I can't use EOF method because of if i do that, i will need to write two statments. Critical...
if(Word == '\n'){ // Word is a string object.
//Clean the vector
# if __TEST__
cout << "Succesful!" << "\n";
# endif
}
}
当我尝试编译此代码时,由于“”“令牌而导致错误。当我用'''令牌改变它时,编译器没有错误但是在运行时,程序无法检测到行尾。解决这个问题的最快方法是什么?
答案 0 :(得分:1)
>>
会丢弃空格,因此Word
不会包含换行符。
如果您想阅读该行的结尾,则应使用getline
函数而不是>>
。