C語言 整型變量的值域
變量代表了內(nèi)存中的一段存儲空間,存儲空間的大小是有限制的,所以并不是所有的整數(shù)都可以用整型變量來表示。例如:ANSI C規(guī)定int型占兩個字節(jié),表示范圍在-32768?32767之間。如果將超出這個范圍的數(shù)據(jù)賦給int型變量,將會溢出。但C語言中編譯系統(tǒng)并不提示“溢出錯誤”。
其實在不同的編譯器中,整型變量所占的字節(jié)是不一樣的,例如:在Turbo C中,一般用2字節(jié)(16位)表示一個int型變量,long型( 4字節(jié))>int型( 2字節(jié))>short型( 2字節(jié))。
而在VC++6.0環(huán)境中,用4字節(jié)表示一個int型變量,long型( 4字節(jié))>int型(4字節(jié))>short 型( 2字節(jié))。
所以,不同類型的整型變量,其值域是不同的,與其所占用的內(nèi)存字節(jié)數(shù)有關(guān)。例如:在Turbo C中,有符號整型變量,其值域為-2(n*8-1)?(2(n*8-1)-1),無符號整型變量的值域為CH2(n*8)-1)。
點(diǎn)擊加載更多評論>>