在C++中,合法的常量可以按照以下幾個(gè)規(guī)則來判斷:
整數(shù)常量:以數(shù)字開頭,可以包含0-9的數(shù)字,以及可選的正負(fù)號(hào)(+/-)。例如:0, 123, -45。
浮點(diǎn)數(shù)常量:以數(shù)字開頭,可以包含0-9的數(shù)字,以及可選的正負(fù)號(hào)(+/-),可以包含小數(shù)點(diǎn)(.),還可以用科學(xué)計(jì)數(shù)法表示。例如:3.14, -0.5, 1e10。
字符常量:用單引號(hào)(')括起來的單個(gè)字符。例如:‘A’, ‘5’, ‘+’。
字符串常量:用雙引號(hào)(")括起來的一串字符。例如:“Hello World”, “12345”。
布爾常量:只有兩個(gè)取值:true和false。
空指針常量:用關(guān)鍵字nullptr表示。
枚舉常量:定義在枚舉類型中的常量。
constexpr常量:使用constexpr關(guān)鍵字定義的常量。
需要注意的是,上述常量的定義方式不同,判斷合法常量的方法也不同。在C++中,通常可以使用合法的語法規(guī)則來判斷常量的合法性,例如,整數(shù)常量中只能包含數(shù)字字符;浮點(diǎn)數(shù)常量中只能包含數(shù)字字符和小數(shù)點(diǎn)等等。如果使用的是C++編譯器,編譯器會(huì)在編譯時(shí)檢查常量的合法性,如果常量不合法,則會(huì)產(chǎn)生編譯錯(cuò)誤。