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

編譯靜態函數時

發布時間: 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};

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

熱點內容
sql2008錯誤233 發布:2025-07-03 02:28:52 瀏覽:168
創建資料庫語句mysql 發布:2025-07-03 02:14:34 瀏覽:146
python量化投資 發布:2025-07-03 02:05:11 瀏覽:804
proxy代理伺服器地址 發布:2025-07-03 01:56:52 瀏覽:910
ps選區存儲 發布:2025-07-03 01:55:21 瀏覽:842
sql2008連接數 發布:2025-07-03 01:55:20 瀏覽:246
androidstring 發布:2025-07-03 01:53:55 瀏覽:183
密碼sql注入 發布:2025-07-03 00:44:07 瀏覽:555
oa伺服器需要什麼硬體 發布:2025-07-03 00:36:05 瀏覽:512
4mol的naoh怎麼配置 發布:2025-07-03 00:19:10 瀏覽:856