各位学过C++的高手进来救命啊~~

来源:百度知道 编辑:UC知道 时间:2024/06/01 06:45:25
我的意图是以下面这个程序段来进行输入,这样连空格也输得了,并以回车为提取结束的标志。但是实际上只有第一行这个可以以回车结束,其它行都要在最后输/n,怎么回事?如何解决?
cin.getline(s.name,16,'/n'); cout<<endl;
cin.getline(s.cred,16,'/n'); cout<<endl;
cin.getline(s.birthday,8,'/n'); cout<<endl;
cin.getline(s.begin,12,'/n'); cout<<endl;

大哥,回车符是'\n',不是'/n',粗心了哦:)

getline
语法:
istream &getline( char *buffer, streamsize num );
istream &getline( char *buffer, streamsize num, char delim );
getline()函数用于输入流,读取字符到buffer中,直到下列情况发生:
num - 1个字符已经读入,
碰到一个换行标志,
碰到一个EOF,
或者,任意地读入,直到读到字符delim。delim字符不会被放入buffer中
最后一句 也就是说 到读到换行'\n'结束