确定用户char输入c ++的结尾

问题描述 投票:0回答:2

我想处理用户输入,它是一行字符串。使用字符串库,它就像cin >> mystring;一样容易,但是出于性能原因,我想一次处理一个字符而不保存以前的字符或使用任何类型的数组。所以我写了这段代码:

char myc;
while(cin >> myc){
   dosomething(myc);
}

但是在写了一行字符串作为输入并按回车键之后,它会处理输入字符,并且仍然等待更多输入字符出现。我也使用了cin.eof()while(myc),但是它们都不起作用。

c++
2个回答
0
投票

要按字符读取流,请使用std::basic_istream<CharT,Traits>::get函数:

std::basic_istream<CharT,Traits>::get

0
投票

您必须检查换行符,但不能用for(char c; std::cin.get(c);) { std::cout << c; } 来做。使用

operator>>
© www.soinside.com 2019 - 2024. All rights reserved.