c中定義變量默認(rèn)初始值是多少?
如果是定義的全局變量或者靜態(tài)變量,未初始化的話就是0.如果是局部變量,那就是以前殘留在堆棧里的隨機值。
區(qū)分變量的類型,有兩種情況。
1、局部變量。
局部變量在沒有顯式初始化時,其值C語言規(guī)范沒做要求,可以是隨機值,也可以是編譯器隨意給定的值。
比如gcc編譯器的局部變量就是隨機值,可能為任何值。而微軟的編譯器,如VC或VS,則會初始化為全c,即0xCCCCCCCC。
2、全局變量或靜態(tài)局部變量。
所有的全局變量,即定義在函數(shù)外的變量,默認(rèn)值為0。
所有的靜態(tài)局部變量,即定義在函數(shù)內(nèi)部的static int name形式的,默認(rèn)初始化為0。
擴(kuò)展資料:
int是一種數(shù)據(jù)類型,在編程語言(C、C++、C#、Java等)中,是用于定義整數(shù)類型變量的標(biāo)識符。
目前在一般的電腦中,int占用4字節(jié),32比特,數(shù)據(jù)范圍為-2147483648~2147483647[-2^31~2^31-1]
在之前的微型機中,int占用2字節(jié),16比特,數(shù)據(jù)范圍為-32768~32767[-2^15~2^15-1]
定義方法:
int i;//定義整形變量i
int i=1;//定義整形變量i并初始化為1
定義常量:
const int i;//編譯錯誤,因為常量需要給予一個初值
const int i=1;//定義常量i,值為1
Java定義常量:
final int i=1;//定義常量i,值為1