close

cin:

1.cin>>ch或cin>>array一開始須擷取實質字元,再擷取空字元(space),tab與enter鍵等字元,才會認為已擷取完畢.

若在一開始擷取即遇到空字元(space),tab與enter鍵等字元(即使連續多次遇到無形字元),則均不接收,且不會因此視為已擷取完成.

因此cin>>ch或cin>>array無法儲存無形字元????????

2.因空字元(space),tab與enter鍵為cin>>的預設停止擷取字元,因此並不會接收,且將其留滯buffer內,給下一個擷取.並在遇到停止擷取字元後,立即視為接收完畢.

3.不會接收空字元(space),tab與enter鍵,會過濾跳過.

cin.get()

1.可讀取接收空字元(space),tab與enter鍵.

(但如果以空字元(space),tab與enter鍵作為停止擷取字串的字元,則不擷取而滯留於buffer內給下一個擷取.)

2.將停止擷取字串的字元滯留於buffer內.

cin.getline()

1.可接收空字元(space),tab與enter鍵.

(但如果以空字元(space),tab與enter鍵作為停止擷取字串的字元則不擷取,而將從滯留於buffer內移除捨去.)

2.將滯留於buffer內的停止擷取字串的字元移除捨去.

arrow
arrow
    全站熱搜

    minsin 發表在 痞客邦 留言(0) 人氣()