2012-12-24 33 views
1

當前我正在讀取帶有空格的輸入。在C++中讀取一個空格的輸入

int main() { 
    char str[100]; 
    string st; 
    cin.getline(str,100); 
    st=str; 
} 

我想利用以字符串一起走的功能,所以我讀了輸入的字符串。是否有任何其他方式直接讀入字符串,也允許空間的輸入。

+2

使用'std :: string'和'std :: getline'。 – chris

+0

你也可以做'cin >> st;' - 它讀取字符串,直到空格 http://www.cplusplus.com/reference/string/operator%3E%3E/ – kassak

回答

5

如果你打算使用std::string對象,只需使用std::getline

std::string st; 
std::getline(std::cin, st); 
-1

使用gets()函數。

它甚至接受空間作爲輸入。

例如, )

gets (variable_name); 
+0

-1 gets()是一個很好的方法引入安全漏洞,除了OP問如何直接讀取std :: string – jrok