cin.getline()方法連續(xù)地從用戶終端接受字符,并將字符存入字符型數(shù)組message中,直到輸入了(maxchars-1)個字符(第maxchars個字符用來存儲字符串結(jié)尾的NULL字符'\0')或者接受到了回車為止,這終端鍵入回車鍵產(chǎn)生一個換行'\n',它被cin.getline()認為是行輸入結(jié)尾。cin.getline()獲得的字符(除了換行符外)被存儲到message數(shù)組中。在返回之前,cin.getline()函數(shù)在存儲的這些字符后面添加一個NULL字符'\0'。
Cin.ignore()方法cin.ignore( 5, 'c' ) 的是從輸入流(cin)中提取字符,提取的字符被忽略(ignore),不被使用。每拋棄一個字符,它都要計數(shù)和比較字符:如果計數(shù)值達到5或者被拋棄的字符是'c',則cin.ignore() 函數(shù)執(zhí)行終止;否則,它繼續(xù)等待。 它的一個常用功能就是用來清除以回車結(jié)束的輸入緩沖區(qū)的內(nèi)容,消除上一次輸入對下一次輸入的影響。比如可以這么用:cin.ignore( 1024, '\n' );,通常把第一個參數(shù)設(shè)置得足夠大,這樣實際上總是只有第二個參數(shù) '\n' 起作用,所以這一句就是把回車(包括回車)之前的所以字符從輸入緩沖(流)中清除出去。
Cin.clear用法如果輸入發(fā)生錯誤發(fā)生,那么流狀態(tài)既被標(biāo)記為錯誤,你必須清除這些錯誤狀態(tài),以使你的程序能正確適當(dāng)?shù)乩^續(xù)運行。要清除錯誤狀態(tài),需使用clear()函數(shù)。此函數(shù)帶一個參數(shù),它是你將要設(shè)為當(dāng)前狀態(tài)的標(biāo)志值。,只要將ios::goodbit作為實參