判斷是否是合法的整型常量
- 法律法規(guī)
- 2024-06-20 07:57:17
c語言中,怎么判斷常量是否合法
整型分前綴(0、0x)和后綴(u、l),每種進(jìn)制中用的數(shù)字不同;
浮點(diǎn)數(shù)后綴f、l,指數(shù)表示注意是否在范圍內(nèi);
字符與字符串主要注意轉(zhuǎn)義字符后面是否合法;
a:整數(shù)中不允許出現(xiàn)逗號(hào);
b:科學(xué)計(jì)數(shù)法表示1.5乘以10的2.0次方,由于科學(xué)計(jì)數(shù)法指數(shù)部分只能是整數(shù)。
c:\號(hào)是轉(zhuǎn)義符號(hào)后面要跟其他符號(hào)來表示具體字符,這里什么都沒跟就寫反引號(hào)了;
d:字符串常量是連續(xù)的2個(gè)字符,第1個(gè)字符的ascii碼是7,第2個(gè)字符的ascii碼是0作為字符串結(jié)束符號(hào),第1個(gè)字符是響鈴符號(hào),輸出時(shí)會(huì)讓默認(rèn)揚(yáng)聲器發(fā)出聲音。
擴(kuò)展資料:
字符串常量是用雙引號(hào)括起來的字符序列。
字符常量可以賦值給字符變量,例如"charB='a';"您不能將字符串常量分配給字符變量,也不能將字符串常量分配給這兩個(gè)變量!
例如,下面是一個(gè)有效的字符串常量:
"Howdoyoudo.","CHINA","a","$123.45","C語言編程","an","#123",""等等是字符串常量
存儲(chǔ):字符串中的字符依次存儲(chǔ)在連續(xù)的內(nèi)存區(qū)域中,并且null字符'\0'會(huì)自動(dòng)附加到字符串的末尾作為字符串的結(jié)尾。因此,一個(gè)n個(gè)字符的字符串應(yīng)該在內(nèi)存中占(n+1)個(gè)字節(jié)。
參考資料來源:百度百科-字符串常量
怎樣判斷給出的數(shù)據(jù)是不是C語言的整型常量,如-012,0x35,123L,8E2
-012、0x35、123L是,8E2不是。
在C語言中,整型常量可用以下三種形式表示:
1、十進(jìn)制整數(shù),即按日常接觸的數(shù)字形式正常表達(dá)。如123、-120;
2、八進(jìn)制整數(shù),以0開頭的數(shù)字進(jìn)行表達(dá)。如0123表示八進(jìn)制數(shù)123,即(123)8,其值為1*82+2*81+3*80,等于十進(jìn)制數(shù)83。-011表示八進(jìn)制數(shù)-11,即十進(jìn)制數(shù)-9。
3、十六進(jìn)制整數(shù),以0x開頭的數(shù)字進(jìn)行表達(dá)。如0x123,代表十六進(jìn)制數(shù)123,即(123)16,其值為1*162+2*161+3*160,等于十進(jìn)制數(shù)291。-0x12等于十進(jìn)制數(shù)-18。
擴(kuò)展資料:
實(shí)型常量
在C語言中,實(shí)型常量只能用十進(jìn)制形式表示。它有兩種形式:小數(shù)形式和指數(shù)形式。
1、小數(shù)形式
由正負(fù)號(hào)、0~9的數(shù)字和小數(shù)點(diǎn)組成。小數(shù)點(diǎn)前面和后面可以沒有數(shù)字(不能同時(shí)省略)。如:-1.85、0.24、.426、-11.
2、指數(shù)形式
由十進(jìn)制數(shù)加上階碼標(biāo)志e或E以及階碼組成。其一般形式為aEn。其中a為十進(jìn)制數(shù),n為十進(jìn)制整數(shù)(n為正數(shù)時(shí)“+”可以省略),其值為a×10?。
如:1.236e+2表示1.236×102 。
參考資料來源:百度百科-整型常量
c語言中合法的整型常量如何判斷,如-0f1
字符串輸入 判定: 第一位可以是 0~9 ,正負(fù)號(hào) 第二位到結(jié)束只含有0~9怎么看整型常量和浮點(diǎn)型常量合不合法,請(qǐng)?jiān)敿?xì)一些
其實(shí)只有三種:整型;字符型;浮點(diǎn)數(shù)型 1、整型:就是我們平時(shí)說的整數(shù),但是在計(jì)算機(jī)里面,它給這個(gè)整數(shù)劃定了一個(gè)范圍。比如int型的范圍就是- 32768 ~ 32767,意思是給它定義的時(shí)候,只能這個(gè)范圍內(nèi)定義,超出了就要出錯(cuò)。所以呀,就有人想呀,如果我要定義更大的數(shù)怎么辦??好了,接下來就有了long (長整型),long long (長長整型),以及short int (短整型,比int顯示的還要?。_@些整型可以是負(fù)數(shù),也可以是正數(shù),這就我們說的有符號(hào)的整型。又有人想我的整數(shù)不能有負(fù)數(shù),那該怎么辦??所有接下來又有了無符號(hào)的整型。就是說取值范圍變成了正數(shù)。其它沒變化。 2、浮點(diǎn)型:其實(shí)就判斷C語言數(shù)值常量是否合法?為什么不合法?
12. 0Xa23 4.5e0,-0xf .5e-3 .177合法。
實(shí)數(shù)型常量:必須有小數(shù)點(diǎn),例如定義double a=1就是錯(cuò)誤的,必須寫成double a=1.0,另外寫成a=1,0中間是逗號(hào),就更是錯(cuò)誤的了。
e與E表示以10為底數(shù)的冪數(shù),且e與E后面必須跟整數(shù),若是小數(shù)也是錯(cuò)誤的,例如3.2e1.5 ,這里1.5是小數(shù),所以錯(cuò)的。
擴(kuò)展資料:
注意事項(xiàng):
const只修飾其后的變量,至于const放在類型前還是類型后并沒有別。如const int a和int const a都是修飾a為const。注意*不是一種類型,如果*pType之前是某類型,那么pType是指向該類型的指針一個(gè)簡單的判斷方法,指針運(yùn)算符*,是從右到左。
C語言編譯主要分為編譯和鏈接兩部分,之所以const修飾的變量變?yōu)橹蛔x是因?yàn)樵谧兞壳凹恿薱onst修飾,如果程序試圖去修改此變量的值,那么編譯器在編譯階段檢查語法錯(cuò)誤的時(shí)候?qū)?bào)錯(cuò),這很好理解,這就是C語言規(guī)定的語法,違反了將提示相應(yīng)的錯(cuò)誤。
參考資料來源:百度百科-常量
參考資料來源:百度百科-C數(shù)值算法
參考資料來源:百度百科-c語言