c語(yǔ)言常量
常量只有四類(lèi):整型常量,浮點(diǎn)常量,枚舉常量 和 字符常量。每類(lèi)都有自己的一點(diǎn)規(guī)定,這個(gè)說(shuō)起來(lái)比較扯,但記起來(lái)很容易:
整型常量有三類(lèi):十、八、十六進(jìn)制常量。
十進(jìn)制的是指:非零數(shù)字起始的數(shù)字序列。
八進(jìn)制:0起始的八進(jìn)制數(shù)字序列。八進(jìn)制數(shù)字是指 0-7 這八個(gè)數(shù)字
十六是:0x 或 0X 起始的十六進(jìn)制數(shù)字序列。十六進(jìn)制數(shù)字是指 0-9 a-f A-F 這些。
以上三類(lèi)都可以追加整型后綴u, U, l, L, ll, LL 用以分別表示常量是 usigned, long, long-long 類(lèi)型。
浮點(diǎn)也有兩類(lèi):一類(lèi)是十進(jìn)制浮點(diǎn)常量,另一個(gè)是十六進(jìn)制浮點(diǎn)常量(這個(gè)不是很常用)。
十進(jìn)制的有兩種上表示方法:
一種借助小數(shù)點(diǎn)的:d.d .d d. 這三種形式。其中的 d 是數(shù)字序列的意思。
一種不用小數(shù)點(diǎn),就必須給出指數(shù)部分(就是用科學(xué)記數(shù)法)。
即使使用第一種方法,后面也可以再根指數(shù)部分,就是加個(gè) e 或者 E 再可選地加一個(gè)正負(fù)號(hào),再數(shù)字序列。
十六進(jìn)制的,大體上差不多,但不管你前面有沒(méi)有小數(shù)點(diǎn),后面的指數(shù)部分都必須給出。用 p 或 P 代替 e E。
所有類(lèi)型都可以加后綴 f F l L。
枚舉的一般不會(huì)考試出的,我想。它的語(yǔ)法也相對(duì)簡(jiǎn)單,就是加個(gè) const 。我就不多說(shuō)了。
字符的其實(shí)最復(fù)雜。
簡(jiǎn)單的說(shuō)就是用 '' 把數(shù)個(gè)(*見(jiàn)我后面的解釋)字符括起來(lái)。比如 'a'。它也有兩類(lèi),一個(gè)是所謂的普通字符常量。另一個(gè)(如果是應(yīng)試的話其實(shí)可以無(wú)視),是寬字符常量,區(qū)別就是前面給個(gè)綴L,比如 L'a'。
但是它有一些轉(zhuǎn)義的規(guī)則。使得用文字描述起來(lái)超吃力,初學(xué)者也容易迷糊。
轉(zhuǎn)義規(guī)則有三類(lèi):簡(jiǎn)單轉(zhuǎn)義,八進(jìn)制轉(zhuǎn)義 和 十六進(jìn)制轉(zhuǎn)義。
簡(jiǎn)單轉(zhuǎn)義就是指 \' \" \? \\ \a \b \f \n \r \t \v 這么固定的幾個(gè)。
八進(jìn)制是指 \ 后跟一至三個(gè)八進(jìn)制數(shù)的形式,如 \1 \12 \ 123
十六進(jìn)制是指 \x 后跟一個(gè)以上十六進(jìn)制數(shù)字的形式,如 \xa \x123abc 這樣的。但限制是追加的值不能超過(guò) unsigned char 或者 wchar_t 表示的上限。
在語(yǔ)義上,一個(gè)字符常量的類(lèi)型是 int 。
posted on 2011-01-26 11:14 葉子 閱讀(1827) 評(píng)論(1) 編輯 收藏 引用 所屬分類(lèi): C\C++

