c語(yǔ)言變量一定要初始化嗎 C語(yǔ)言怎樣初始化變量?
C語(yǔ)言怎樣初始化變量?在C語(yǔ)言中,初始化操作是在定義變量時(shí)給變量賦值,稱(chēng)為變量初始化。字符變量也是如此。示例如下:在c語(yǔ)言中,局部變量初始化是什么意思,要怎么初始化?根據(jù)范圍,C語(yǔ)言一般分為全局變量和
C語(yǔ)言怎樣初始化變量?
在C語(yǔ)言中,初始化操作是在定義變量時(shí)給變量賦值,稱(chēng)為變量初始化。字符變量也是如此。示例如下:
在c語(yǔ)言中,局部變量初始化是什么意思,要怎么初始化?
根據(jù)范圍,C語(yǔ)言一般分為全局變量和局部變量。一旦聲明了全局變量,默認(rèn)情況下它將被初始化為適當(dāng)?shù)念?lèi)型0,而當(dāng)聲明了局部變量時(shí),它的值是不可預(yù)測(cè)的。因此,對(duì)于后續(xù)程序的正常使用,最好是將其初始化得恰到好處,否則有時(shí)會(huì)造成災(zāi)難性的后果!第二個(gè)問(wèn)題,例如:intmain(){Chara;//未初始化。以后可以初始化。Char*P=&A;//已初始化。指針P給定了變量a的地址,char*q;//未初始化。太危險(xiǎn)了!因?yàn)橹羔榪是一個(gè)局部變量,此時(shí)的值是不確定的,它可能指向系統(tǒng)的重要數(shù)據(jù)。一旦在初始化此變量之前遇到類(lèi)似于以下的語(yǔ)句,就很危險(xiǎn):q=&A;}
static int Gu32uutest=0//此變量的函數(shù)就是整個(gè)測(cè)試。C void testfun(void),因?yàn)檫@個(gè)靜態(tài)變量是在函數(shù)外部定義的。
}
Void testfun2(Void){testvar=2//在此處訪(fǎng)問(wèn)testvar將提示undefined,因?yàn)榇俗兞渴窃诹硪粋€(gè)函數(shù)中定義的局部靜態(tài)變量,僅在定義它的函數(shù)中使用。}如果在另一個(gè)C文件中訪(fǎng)問(wèn)g,比如main。測(cè)試也會(huì)出錯(cuò)。但其他功能在測(cè)試中。C可以叫它。