您好,現(xiàn)在蔡蔡來為大家解答以上的問題。百度carlife無線連接,百度cin相信很多小伙伴還不知道,現(xiàn)在讓我們一起來看看吧!
1、cin是輸入操作符,cin>>a的過程是先取得從鍵盤的輸入值a,并將a賦給cin,因此while(cin>>a)的意思就是只要輸入的值有效,那么就執(zhí)行while體內(nèi)的語句。
2、實例設(shè)計如下:統(tǒng)計輸入連續(xù)數(shù)字的個數(shù),while循環(huán)結(jié)束 (跳出流對象)的時候,打印最后一個數(shù) 。
3、通過檢測其流的狀態(tài)來判斷結(jié)束;(1)若流是有效的,即流未遇到錯誤,那么檢測成功。
4、(2)若遇到文件結(jié)束符,或遇到一個無效的輸入時(例如本題輸入的值不是一個整數(shù)),istream對象的狀態(tài)會變?yōu)闊o效,條件就為假。
5、2、執(zhí)行結(jié)果如下(Z是按了ctrl的效果,為了結(jié)束執(zhí)行):【不同的操作系統(tǒng)有不同的約定,在windows系統(tǒng)中,輸入文件結(jié)束符的方法是先按Ctrl+Z,然后再按Enter。
6、在UNIX系統(tǒng)中,包括Mac OS X系統(tǒng)中,文件結(jié)束輸入為Ctrl+D。
7、】擴(kuò)展資料:while(cin>>a)的合法性:運(yùn)算符返回的是流對象的引用,cin是一個流對象,而>>運(yùn)算符返回左邊的流對象,也就是說cin>>val返回cin,于是while(cin>>val)就變成了while(cin),問題就變成了一個流對象在判斷語句中的合法性。
8、不管是while(cin)還是if(cin),都是合法的。
9、因為定義一個類,然后定義該類的對象,然后使用if語句來判斷它是不合法的。
10、這說明,流對象具有某種轉(zhuǎn)換函數(shù),可以將一個流對象轉(zhuǎn)換成判斷語句可以識別的類型。
11、打開iostream.h文件中operator void *() const和bool operator!() const。
12、這兩個函數(shù)使得流對象可作為判斷語句的內(nèi)容。
13、operator void *() const;函數(shù)在while(cin)或是if(cin)時被調(diào)用,將流對象轉(zhuǎn)換成void*類型。
14、bool operator!() const;函數(shù)在while(!cin)或是if(!cin)時被調(diào)用,將流對象轉(zhuǎn)換成bool類型。
15、此外,這兩個類型轉(zhuǎn)換都是隱式的。
16、參考資料:百度百科--cin(C++標(biāo)準(zhǔn)輸入流)。
本文就為大家分享到這里,希望小伙伴們會喜歡。