c++坑點:單引號的坑(單引號內多個字符)


   眾所周知,在c++之中,雙引號是用來表示其包括的內容為字符串,而單引號包括的內容表示其包括的為一個字符,那單引號的括起內容的實質是什么呢?

   於是,我開始了我的實踐(作死)之路:

 

 

 

 

為什么當輸出'AA'時,會輸出這么神奇的數字16705?

 

下面我們就來研究一下這個問題:

Int 類型占據四個字節,即16位二進制

A的二進制為0100 0001,因此它的數值為65.

當有兩個AA時,其為0100 0001 0100 0001

當將二進制0100000101000001轉換為十進制時,其數字為16705

為什么在有的編譯器當超出四個字符時會出現警告甚至報錯,因為在c++之中,int類型為四個字節,即十六位,而每個字符類型為一個字節即四位。當超過四個字符時,有的編譯器會自動轉換為更高位數據類型,即long甚至long long(尚待實驗)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM