2013-10-29 61 views
-1

所以我想讓用戶輸入他們的名字和身高。程序不會允許2個輸入?

我有其他的代碼。

我已經得到了這個。

#include <iostream> 
#include <string> 
#include <algorithm> 
using namespace std; 

int main() 
{ 
int name1; 
cout << "What's your name?"; 
cin >> name1; 

int height1; 
cout << "What's your height?"; 
cin >> height1; 

return 0; 
} 

問題是,它不會允許用戶輸入他們的身高。有任何想法嗎?

+1

你'name1'作爲'int'。那是錯的。另外,'cin >>'輸入是空格分隔的。 – crashmstr

回答

6

問題是,你使用的是int變量而不是std :: string。但是,你已經包括了<string>頭文件,所以你可能想這樣做:

#include <iostream> 
#include <string> 
#include <algorithm> 
using namespace std; 

int main() 
{ 
std::string name1; 
cout << "What's your name?"; 
cin >> name1; 

std::string height1; 
cout << "What's your height?"; 
cin >> height1; 

return 0; 
} 

否則只有當你輸入整數工作 - 但是,這並不讓一個「名稱」輸入太大的意義。

編輯:如果它也用空格輸入名稱您的要求,您可以使用std::getline

#include <iostream> 
#include <string> 
#include <algorithm> 
using namespace std; 

int main() 
{ 
std::string name1; 
cout << "What's your name?"; 
getline(cin, name1); 

std::string height1; 
cout << "What's your height?"; 
getline(cin, height1); 

return 0; 
} 
+0

謝謝!有用! –

+1

那麼如果我輸入「Bob T. Fish」'會發生什麼? (即它有點破) – BoBTFish

+0

多個單詞不起作用,他會爲此尋求幫助。但作爲C++流的快速入門,這並不壞。 –