㈠ 字元初始值
樓上的錯了,c語言裡面根本沒有默認的字元值,如果你聲明一個字元變數,沒有初始化,裡面是任意值。除非你把這個字元變數聲明為全局變數,由於全局變數如果你沒有初始化,編譯器會自動初始化為0,這個時候你的字元變數裡面才是'\0'
㈡ c語言中,定義一個數組,其中每個變數的初始值是0嗎
如果是一個整型數組,而且沒有初始化的話,默認值是0,如果有初始化,則以初始化的值為主
㈢ C語言字元數組不賦初值是默認為'\0'還是隨機值
普通數組沒有賦初值,默認的數組元素值是隨機數,不是0。
如果在定義數組時,數據類型前面加上關鍵字static,數組變成了靜態數組;或者把數組定義在函數的外面,成為全局變數數組,這時數組元素的值自動賦值為0。
例子:
#includeint main(void)
{
int m = 0;
static int n;
int a = 5, b = 6, c = 7, d = 8;
int k = ((m = a>b) && (n = c>d))
printf("k = %d, m = %d, n = %d ", k, m, n);
return 0;
}
輸出結果為:k = 0, m = 0, n = 0;
當變數用static修飾,但是沒有賦初始值的時候,編譯器會自動給它賦值為0.但是如果不用static 只是 int n;這樣定義的話,這個值就是未知的,因為編譯器會給這個變數分配一塊4位元組的地址空間,這個地址裡面的值就是n的值。
(3)c語言中字元數值初始化的默認值擴展閱讀
1、數組中的每個元素都有一個序號,這個序號從0開始,而不是從熟悉的1開始,使用數組元素時,指明下標即可。
2、數組下標必須是整數,取值范圍為 0 ≥ index > length。
㈣ c語言中定義變數不賦初值默認是多少
沒有加static,默認為auto 型,此時,不給初值,變數的初值是隨機的。
如果加了static不給初值,變數的初值是默認的 0。
其實不能說不賦初值就不行,對於局部變數,不賦初值的話,其實他裡面存的是一個隨機的值,誰也不知道他是多少,因此如果沒賦初值的情況下就使用它,程序是完全不可控的,如你的圖1,直接在while里去判斷b了,因此這個while判斷是不可控的。
【c語言】
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言訂定了一套完整的國際標准語法,稱為ANSI C,作為C語言最初的標准。
㈤ c語言數值型數據的默認值是多少
默認值是不可意料的。
不同編譯器對靜態常量的處理方法可能不一致,但多數編譯器翻譯會匯編語言都是用的db 0這種方式,那麼默認值為0,但是我們不要依賴這個,因為C語言標准沒有規定一定要這么做,程序中也可以用db ?方式實現。
對於局部變數,幾乎所有的編譯器都是利用add bp,n之後,用[bp+n]來表示,它的值是完全不可醫療的。