1. 程式人生 > >cin的整行讀取克服空格結束問題

cin的整行讀取克服空格結束問題

cin>>temp;

cout<<temp;

cin>>temp;

hello world

結果顯示 hello 第二次不用輸入了。 因為cin以空格為一次的結束

那麼要整行讀取時,

const int size = 20;

cin.getline(temp,size);

或cin.get(temp,size).get();  // 後一個抹去換行符

也可cin.getline(temp1,size).getline(temp2,size);  //連續操作兩行

對於一個問題

cin>>year;

cin>>getline(address,80);

容不得我們輸入地址就結束了,因為year讀了數字後,它的回車被getline捕獲,認為地址是空行。

我們要做的是在兩句間加入cin.get();一句即可。抹去回車影響。

或者把getline換成get?(不行)