如何让用户在C++中输入多行字符串数据?

问题描述:

我试过getline(cin,....),但是这不能输入多行。输入的结尾由#等决定。如何让用户在C++中输入多行字符串数据?

+2

您希望用户如何指示输入结束? – 2010-10-23 23:36:37

您可以使用与'\ n'不同的字符作为分隔符的getline。

// will collect input until the user enters a # 
getline(cin,mystring,'#'); 

难道你只是连接每行的字符串?

我会去conio.h(或任何其他平台有,如果它没有conio)和只写输入法自己。这样你可以使它更加漂亮和万无一失。

试着这么做:

#include <iostream> 

... 

std::string input; 
while(1) 
{ 
    input = ""; 
    std::cin >> input; 
    if(input[input.size() - 1] == '#') 
     break; 
} 

使用C++的东西,而不是C的东西。