读书人

一个关于getline的有关问题

发布时间: 2012-03-15 11:50:38 作者: rapoo

一个关于getline的问题
有一小程序:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string line,word;
while(getline(cin,line))
cout < <line < <endl;
cout < <endl;
return 0;
}
问题有:(1)输入字符串:
hello(回车)
word(回车)
在打第二个回车的时候,程序会立即显示hello,若再打回车,会显示一个空行后,输出word,为什么会这样?
(2)为什么在我进行输入的时候不能连续输入三行以上的时候,再显示结果?
(3)ctrl_z在类似的程序中到底起着怎样的作用?
  程序在VC6.0环境下运行
望高手指教!

[解决办法]
(1)我用devcpp调试,没有出现这样的情况。
(2)你没有用程序控制它连续输入几行再输出,它当然不会了,函数是getline(取一行啊)
(3)键入ctrl_z 是键入了一个EOF(end of file),表示文件末尾,用ctrl-z 就表示没有更多的数据可以输入,ctrl-z是在windows 系统中的一个标志符。

读书人网 >C++

热点推荐