2016-03-25 36 views
-2

我試圖解決這個問題http://a2oj.com/p?ID=24。然而,當我嘗試接受測試的情況下,輸入測試用例數和命中進入後,控制檯窗口顯示爲0。 我的代碼:爲什麼我打這個C++代碼後輸入0

#include <cstring> 

using namespace std; 

int main() 
{ 
    int t; //test cases 
    string str; 
    cin >> t; 
    while(t--){ 
    std::getline (cin,str); 
    int len = str.size(); 
    cout << len; 
    } 
    cin.get(); 
    return 0; 
} 
+1

您是否試圖在任何地方搜索此內容? – user7

+1

可能的重複[如何用整個句子加空格](http://stackoverflow.com/questions/15446951/how-to-cin-whole-sentence-with-whitespaces) – user7

+0

定義問題的網站可能沒有啓動當有人後來發現你的問題:所以發佈問題的規則迫使你在*這個網站上正確定義你的問題,所以它肯定會爲未來的讀者提供。 –

回答

1

您需要使用std::getline(string)功能。請參閱此示例代碼:

// extract to string 
#include <iostream> 
#include <string> 

    int main() 
    { 
     std::string name; 

     std::cout << "Please, enter your full name: "; 
     std::getline (std::cin,name); 
     std::cout << "Hello, " << name << "!\n"; 

     return 0; 
    }