2 zay999abc zay999abc 于 2015.06.16 21:31 提问

请大家帮忙看看这个程序。

#include
#include
using namespace std;
int main(void)
{
char ch;
string s;
while (cin >> ch)
s.push_back(ch);
cout << s;
}
问题:1.为什么Ctrl+z不能结束输入。C++的文件结束符是什么?
2.我将循环条件改成cin>>ch && ch!='1'后,输入hello world1,为什么输出是helloworld,空格去哪啦?
3.谢谢。

6个回答

lx624909677
lx624909677   Ds   Rxr 2015.06.16 21:57
已采纳

while( cin.get())这样才能接收空格

lx624909677
lx624909677 回复zay999abc: 随便呀,可以按你写的那种方式来结束
2 年多之前 回复
zay999abc
zay999abc 那怎样结束呢?
2 年多之前 回复
tongyi55555
tongyi55555   2015.06.16 23:05

我是冲着你的标签来的,居然写了java C C# C++四个标签,太强悍了。

caozhy
caozhy 我也想说同样的内容,被你说了。
2 年多之前 回复
frank_20080215
frank_20080215   2015.06.16 22:04

C++的结束符是Ctrl+C,cin只是接收字符,空格表示间隔符。如果要接收空格,输入/t

zay999abc
zay999abc 谢谢。
2 年多之前 回复
dominating413421391
dominating413421391   2015.06.16 23:25

1、改为ctrl c 2、改为get 3、支持楼上

zay999abc
zay999abc 谢谢。
2 年多之前 回复
beacon_2011
beacon_2011   Rxr 2015.06.17 21:49

CIN接收回车字符/t

cuiwei1026522829
cuiwei1026522829   Ds   Rxr 2015.06.16 22:28

空格要用cin.get()接受。。

zay999abc
zay999abc 谢谢。
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片