程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> iostream-小白問c++中關於getline函數的問題

iostream-小白問c++中關於getline函數的問題

編輯:編程解疑
小白問c++中關於getline函數的問題

圖片說明
問題如圖上的注釋,為什麼一定要在循環體之前加一個getline函數才能讓vector中第一個元素讀入字符串,否則vector中第一元素就是空字符串?
#include
#include
#include

using namespace std;

int main()
{ int num;
cin>>num; //num is the number of telephone numbers to be read

string line;
vector<string> numlist;
getline(cin,line);  //為什麼這裡一定要加一行getline, 不加的話numlist第一個元素總是空字串 
for(int i=1;i<=num;i++)
{   
    getline(cin,line);
    numlist.push_back(line);
}

return 0;
}

在這裡小白先謝謝各位大神前輩了

最佳回答:


和你的輸入有關,你輸入的時候如果是輸入一個變量按一個回車的話,那麼需要getline吃掉回車。不然cin讀取下一個,讀取不到變量,讀取的是那個回車。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved