cin>>, cin.get(ch) , cin.get(array,n,'ch') , cin.getline(array,n,'ch')擷取特性:
1.cin>>ch與cin>>array一開始遇到不顯示的無形字元,將無法執行接收.
2.cin.get(ch)
a.僅能擷取單一字元的成員函式,故無停止擷取鍵字符,故任意字元皆可接收(包含能接收無形字元).
b.
3.cin.get(array,n,'ch')除了停止擷取字元'ch'之外,其餘字元皆可接收(包含能接收無形字元).
a.若ㄧ開始遇到輸入停止擷取字元'ch',其被視為一個不正常的失敗擷取(cin.fail() =1),則立即停止擷取,但仍以接收字串結束符'\0'表示 接收完畢,且cin.get(array,n,'ch')擷取失敗後,將造成下一個擷取同樣擷取失敗.無法再擷取.
b.若為正常擷取,則再將停止擷取字元'ch'滯留於buffer內,以再供給給下一個擷取吸收.
4.cin.getline(array,n,'ch')一開始除了輸入停止擷取字元'ch之外,其餘字元皆可接收(包含能接收無形字元).
a.若ㄧ開始遇到停止擷取字元'ch',則其被視為一個正常的擷取(cin.good() =1),並立即停止擷取,且以接收一個字串結束符'\0'表示接收完 畢.
b.且將滯留於buffer內的'ch'字符捨棄,而'ch'字符之後的字符則依舊滯留於buffer內,以供給給下一個繼續擷取.
請先 登入 以發表留言。