3 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果在函數(shù)中聲明了數(shù)組,則該值是不確定的。int x[10];
函數(shù)的意思是:無需進(jìn)行任何初始化即可獲得10 int大小的內(nèi)存區(qū)域的所有權(quán)。如果將數(shù)組聲明為全局1或static
函數(shù)中的聲明,則所有尚未初始化的元素都將初始化為零。

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
按照標(biāo)準(zhǔn)設(shè)置,所有全局和函數(shù)靜態(tài)變量都會(huì)自動(dòng)初始化為0。自動(dòng)變量不會(huì)初始化。
int a[10]; // global - all elements are initialised to 0
void foo(void) {
int b[10]; // automatic storage - contain junk
static int c[10]; // static - initialised to 0
}
但是,最好始終手動(dòng)初始化函數(shù)變量,而不管其存儲(chǔ)類如何。要將所有數(shù)組元素設(shè)置為0,您只需要將第一個(gè)數(shù)組項(xiàng)分配為0-省略的元素將自動(dòng)設(shè)置為0:
int b[10] = {0};
- 3 回答
- 0 關(guān)注
- 1322 瀏覽
添加回答
舉報(bào)