當前位置:首頁 » 編程軟體 » 編譯靜態函數時

編譯靜態函數時

發布時間: 2024-05-20 21:51:20

1. C語言中static修飾的函數和普通函數的區別

靜態函數,編譯前就已經調用了,動態函數編譯時再調用

2. 編譯原理:靜態數組的存儲空間可以在編譯時確定。這句話為什麼是錯的。請給出詳細原因,謝謝。

靜態數組指的是寫代碼期間就知道大小的數組,比如int a[10];

char s[] = "hello";

這個靜態和動態分配相區別,不要和static弄混了,static/extern/auto是用於說明變數的存儲方式——也就是說,靜態數組也可以是static的,也可以是extern的,也可以是auto的。

舉個例子,下面就是一個靜態數組,但是存儲方式是auto的。

voidtest()
{
inta[10];
}

這個數組的存儲空間無法在編譯時候確定,只能在運行期間確定,原因是:盡管可以確定數組的大小,但是不能確定它的首地址。

再比如:

static int sa[10] = {0};

這個數組的存儲空間在編譯時,就可以確定了。

熱點內容
哈爾演算法 發布:2024-11-08 14:36:27 瀏覽:844
內置緩存指 發布:2024-11-08 14:34:31 瀏覽:717
同步cm12源碼 發布:2024-11-08 14:34:21 瀏覽:717
悠悠解壓 發布:2024-11-08 14:06:54 瀏覽:372
低頻訪問存儲 發布:2024-11-08 14:05:31 瀏覽:680
html5坦克大戰源碼 發布:2024-11-08 14:04:35 瀏覽:407
輸錯密碼鎖定什麼意思 發布:2024-11-08 14:02:07 瀏覽:542
存儲計算邏輯 發布:2024-11-08 13:49:35 瀏覽:544
java演算法排序演算法 發布:2024-11-08 13:42:20 瀏覽:884
u盤隨身系統linux 發布:2024-11-08 13:34:34 瀏覽:412