關(guān)于C++中0是十進制還是八進制的問題
雖然在任何進制數(shù)種, 0 只有一個值——那就是「零」,之所以問這個問題,純粹是閑的。
最近和朋友們討論關(guān)于數(shù)的話題,他說,八進制數(shù)現(xiàn)在幾乎從未使用過。 我一時無法反駁,確實,除了我們經(jīng)常使用的十進制,在計算機中用的最多的就是二進制和十六進制了,八進制數(shù)確實很“小眾”。
等我回到家仔細一琢磨,八進制,八進制,「八進制就是以 0 開頭的數(shù)字」,咦,那 0 算嗎?0 也是以 0 開頭的數(shù)字??!如果 0 是八進制的話,那么我們幾乎每天都在使用八進制數(shù)。 計算機中確實有很多東西值得深究,比如簡單類型其實一點都不簡單,更多的計算機問題可以去我的《代碼之謎》系列去看看。
那么 0 是八進制數(shù)嗎?C++ 規(guī)范如何定義的?
是的,在 C++ 中,0 是 八進制 的。
根據(jù) C++ 標(biāo)準(zhǔn):
2.14.2 整數(shù) [lex.icon]
integer-literal:
decimal-literal integer-suffixopt
octal-literal integer-suffixopt
hexadecimal-literal integer-suffixopt
decimal-literal:
nonzero-digit
decimal-literal digit
octal-literal:
0 <--------------------<這里>
octal-literal octal-digit
以后我們設(shè)置可以自豪的說,“在計算機中,八進制比二進制,甚至十六進制更普遍”。
相關(guān)文章
Qt數(shù)據(jù)庫應(yīng)用之實現(xiàn)通用數(shù)據(jù)庫請求
這篇文章主要為大家介紹了Qt中是如何實現(xiàn)通用數(shù)據(jù)庫請求的,文中的示例代碼講解詳細,對我們學(xué)習(xí)Qt有一定幫助,感興趣的小伙伴可以了解一下2022-03-03
C++實現(xiàn)中綴表達式轉(zhuǎn)化為后綴表達式詳解
這篇文章主要為大家詳細介紹了如何利用C++解決實現(xiàn)中綴表達式轉(zhuǎn)換為后綴表達式的問題,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
Qt中關(guān)聯(lián)容器QMap,QMultiMap,QHash,QMultiHash的使用
本文主要介紹了Qt中關(guān)聯(lián)容器QMap,QMultiMap,QHash,QMultiHash的使用,這些關(guān)聯(lián)容器在Qt中提供了靈活而強大的數(shù)據(jù)結(jié)構(gòu)選項,根據(jù)具體的需求和使用場景,您可以選擇適合的容器來存儲和管理數(shù)據(jù),感興趣的可以了解一下2023-09-09
C語言函數(shù)調(diào)用底層實現(xiàn)原理分析
這篇文章主要介紹了C語言函數(shù)調(diào)用底層實現(xiàn)原理,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02

