當前位置:首頁 » 編程語言 » c語言局部變數初始化

c語言局部變數初始化

發布時間: 2023-01-22 03:24:07

c語言 初始化

C語言中定義int變數,默認值是多少

專業回答

區分變數的類型,有兩種情況。

1 局部變數。

局部變數在沒有顯式初始化時,其值C語言規范沒做要求,可以是隨機值,也可以是編譯器隨意給定的值。

比如gcc編譯器的局部變數就是隨機值,可能為任何值。而微軟的編譯器,如VC或VS,則會初始化為全c,即0xCCCCCCCC。

2 全局變數或靜態局部變數。

所有的全局變數,即定義在函數外的變數,默認值為0。

所有的靜態局部變數,即定義在函數內部的

static int name;

形式的,默認初始化為0。

滿意回答

如果是定義的全局變數或者靜態變數,未初始化的話就是0.如果是局部變數,那就是以前殘留在堆棧里的隨機值。

摘自網路知道

⑵ C語言怎樣初始化變數

局部變數和全局變數
在任何時候都可以初始化的
只是它們生存的周期不一樣而已
你可以在定義的時候初始化
一般也最好這樣
你也可以在定義它之後初始化
只要是在你使用它們之前進行的任何時候初始化就是沒問題的

⑶ C語言靜態局部變數初始化問題

這與編譯器的處理方法有關。
靜態變數生命期與程序相同,未調用函數前,內存分配已完成。是否同時也賦了值,不能肯定。可能在第一次調用時賦值,也可以在開辟內存的時候就已經賦了值。
從程序設計考慮,假定內存分配時尚未完成賦值,以免副作用。

⑷ 關於C語言里的初始化問題 為什麼要初始化

「局部變數初始化」是指在使用這個局部變數前,要對其進行初始化。這是因為局部變數是從內存堆中分配的,用完就還給內存堆,所以被分配的局部變數並不一定是0,而很可能是其他地方用過的一個值,因此在使用這個變數之前,要對它進行顯示初始化。

⑸ C語言中「局部變數要初始化,全局變數不要初始化」,是這樣的嗎

不是的。全局變數還是局部變數都可以初始化或者不初始化化
,語法沒有對這有要求。
但是到實際情況是根據你寫的代碼來分析。
你寫的int
total
=
0;
在你不初始化報錯的原因是,int
total;
total是沒有賦值的一個變數,那他的值就是分配內存中殘留的值,屬於錯誤的數據。
你後面用到total+=num[j].一個錯誤的數據做操作就報錯了,就算不報錯,你得到的結果是不正確的。
所以在你這個情況,賦值為0
。並不是語法規定。

⑹ C語言中的局部變數如果沒有指定初值,則其初值自動設置為0嗎

不會,C語言不會對局部變數進行自動初始化,未設定初值的局部變數,數值為隨機值。

C語言是一門面向過程的、抽象化的通用程序設計語言,廣泛應用於底層開發,C語言能以簡易的方式編譯、處理低級存儲器。

C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平台的特性。

(6)c語言局部變數初始化擴展閱讀:

C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。

實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。

C語言是一種結構化的語言,提供的控制語句具有結構化特徵,如for語句、if⋯else語句和switch語句等。可以用於實現函數的邏輯控制,方便麵向過程的程序設計。

⑺ C語言變數必須初始化嗎

是必須初始化的,只是編譯器有時代替人工初始化而已。當全局變數沒有初始化時,系統會自動初始化。(正常情況下)局部變數沒有初始化時,系統會報錯。

⑻ C語言中初始化是什麼意思

C語言中的初始化就是你要給它賦予一個詞,這個詞漸漸影響到你程序的一個說說效果,如果不進行初始化,那這個數據,他的直將是不定的程序,也是無法運行的,就算是可以運行,也不是你想要的數據。

⑼ 在c語言中,局部變數初始化是什麼意思,要怎麼初始化

按作用域,C語言一般分為全局變數和局部變數。全局變數一旦聲明就被默認初始化為適當類型的0,而局部變數被聲明的時候其值是不可預料的,所以為了後續程序的正常使用,最好將其認為地初始化,否則有時會有災難性的後果!
第二個問題,例如:
int main()
{
char a;//沒有被初始化,可以在後面初始化,一般沒危險性
char *p = &a;// 已初始化,指針p被賦予變數a的地址
char *q;//沒有被初始化,相當危險!因為指針q是局部變數,此時的值是不確定,可能指向系統的重要數據,一旦在此變數被初始化前遇到類似下面的語句,就危險了:
q = &a;
}

⑽ C語言局部變數如初始化了,那麼每次進入都被初始化一次嗎

是的,函數退出局部變數就撤銷,再次進入時需要重新初始化。除非是靜態變數,它是位於進程的靜態數據區,只進行一次初始化。

熱點內容
捷達方向機安全登錄密碼是多少 發布:2025-07-19 00:57:37 瀏覽:688
夜魔迅雷下載ftp 發布:2025-07-19 00:39:29 瀏覽:94
增值稅票安全接入伺服器地址 發布:2025-07-19 00:20:45 瀏覽:481
solidworkspcb伺服器地址 發布:2025-07-18 22:50:35 瀏覽:816
怎麼在堆疊交換機里配置vlan 發布:2025-07-18 22:42:35 瀏覽:625
java調用別人的介面 發布:2025-07-18 22:37:35 瀏覽:435
伺服器四個節點如何聯網 發布:2025-07-18 22:36:02 瀏覽:273
華強北什麼地方休安卓手機 發布:2025-07-18 22:24:56 瀏覽:736
資料庫的根本目標 發布:2025-07-18 21:37:50 瀏覽:941
壓縮機的流速 發布:2025-07-18 21:37:40 瀏覽:409