繁体   English   中英

C ++:使用cin.ignore之前需要使用cin.get()吗?

[英]C++: Do I need to use cin.get() before I use cin.ignore?

如果我仅在流中使用标准cin cin.ignore(100,'\\n')是否cin.ignore(100,'\\n')

例:

cin >> temp;  //enter key input
if(cin.fail())
{
  cin.clear();
  cin.ignore(100,'\n');
}

还是我必须使用cin.get()?

例:

temp=cin.get();
if(cin.fail())
{
  cin.clear();
  cin.ignore(100,'\n');
}

还是这些代码会产生相同的结果?

啊,愚蠢的我,我做了一个函数来调用清除

void clear()
{
  cin.clear();
  cin.ignore(100,'\n');
}

在我的程序中,它多次调用了函数clear() 如果在没有cin的输入的情况下连续两次调用clear() ,则提示输入空白行。

我猜这是造成它的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM