c語言中定義變數不賦初值是多少,為什麼C語言中定義變數的時候不能連續給多個變數賦初值

2021-03-04 00:12:45 字數 1118 閱讀 1379

1樓:enjoy蘰踄繧鍴

沒有加static,預設為auto 型,此時,不給初值,變數的初值是隨機的。

如果加專了static不給初值,變數的屬初值是預設的 0。

其實不能說不賦初值就不行,對於區域性變數,不賦初值的話,其實他裡面存的是一個隨機的值,誰也不知道他是多少,因此如果沒賦初值的情況下就使用它,程式是完全不可控的,如你的圖1,直接在while裡去判斷b了,因此這個while判斷是不可控的。

【c語言】

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的c語言語法產生差異,由美國國家標準局為c語言訂定了一套完整的國際標準語法,稱為ansi c,作為c語言最初的標準。

為什麼c語言中定義變數的時候不能連續給多個變數賦初值

2樓:墨汁諾

c語言中 不能連bai續賦初值du說的是以下這種情zhi況:

錯誤演dao示:int a = b = 0;

補充:在for函式回中允許。

eg: for(a=b=0; ;);

y作為答一個變數,可以被多次賦值,當你再一次賦值時,會將上次的值覆蓋掉。

在c語言中,當定義一個變數y時,系統會在記憶體中的某個地址分配一個儲存單元,用來存放y變數的值,多次賦值,相當於多次往這個地址的儲存單元寫資料,只是覆蓋而已。

3樓:浩哥

c語言中 不能連續賦初值說的是以下這種情況:

錯誤演示:int a = b = 0;

補充:在for函式中允許。

eg: for(a=b=0; ;); 望採納!

4樓:金色潛鳥

可以給多個變數賦初值,例如:

int a=1, b=2, c=3, d[3]=;

float x=12.3, y=45.6, z[3]=;

c語言中定義變數不賦初值預設是多少

沒有加static,預設為auto 型,此時,不給初值,變數的初值是隨機的。如果加了static不給初值,變數的初值是預設的 0。其實不能說不賦初值就不行,對於區域性變數,不賦初值的話,其實他裡面存的是一個隨機的值,誰也不知道他是多少,因此如果沒賦初值的情況下就使用它,程式是完全不可控的,如你的圖1...

C語言中怎樣定義常量變數,C語言中是如何定義常量的啊

常量的定義用const關鍵字 const 型別名 常量名 值 變數的定義是 型別名 變數名 c語言中是如何定義常量的啊 我們在用c程式設計時有時需要定義不變的變數,即常量,有兩種方法。例如 定義常量pi的兩種方式 1.define pi 3.1415926f 2.const float pi 3.1...

c語言中陣列長度不能用變數定義嗎

1 c語言e68a8462616964757a686964616f31333365646235中不支援。c 中支援變長陣列 你可以自行度娘變長陣列和alloca函式 但是因為其實在棧上分配,不被推薦使用。做為解決方案,你可以使用c式的malloc函式或者c 式的new函式來在堆上動態分配記憶體,這樣...