每次我做一小段C++代码行
std::string s;
cin >> s;
我咒骂自己,因为我忘记了它只停留在空格,而不是整行。
然后,一想起getline
,我总是对这两种变体感到困惑:
std::string s;
getline (std::cin, s);
和:
char cs[256];
std::cin.getline (cs, sizeof (cs));
除了数据类型之外,这两种类型之间是否真的有区别?
在我看来,C++的方式应该是前者。假设我可能应该使用实际字符串而不是以null结尾的字符数组,那么在什么情况下我应该使用后者?
而且,既然输入实际上应该是输入流的权限,为什么istream
的前一部分不是
https://stackoverflow.com/questions/4872361
复制相似问题