可能的重复:
需要有关 getline() 的帮助 https://stackoverflow.com/questions/1744665/need-help-with-getline
getline()
不起作用,如果我在一些输入后使用它,即
#include<iostream>
using namespace std;
main()
{
string date,time;
char journal[23];
cout<<"Date:\t";
cin>>date;
cout<<"Time:\t";
cin>>time;
cout<<"Journal Entry:\t";
cin.getline(journal,23);
cout<<endl;
system("pause");
}
好像我用的地方getline()
在输入之上,它确实有效,即
cout<<"Journal Entry:\t";
cin.getline(journal,23);
cout<<"Date:\t";
cin>>date;
cout<<"Time:\t";
cin>>time;
可能是什么原因?
提取字符直至 (n - 1) 个字符被提取
提取或找到分隔符(如果这是分隔符)
参数已指定,否则为 '\n')。提取也停止
如果输入序列到达文件末尾或者出现错误
发生在输入操作期间。
When cin.getline()
从输入中读取,输入流中留有换行符,因此它不会读取您的 c 字符串。使用cin.ignore()
打电话之前getline()
.
cout<<"Journal Entry:\t";
cin.ignore();
cin.getline(journal,23);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)