作者abcb1 (買顯卡 7300gt)
看板C_and_CPP
標題[問題] 請問extern可以這樣用嗎
時間Tue May 19 02:08:23 2009
我想宣告一塊記憶體 讓其他function去做存取
但是我可能經過幾個function以後才會用到
ex: main-> functionA -> functionB ->functionC讀取記憶體
我不想一直把記憶體位置p傳下去
所以我寫了下面這樣的程式
extern p;
int main(){
int* p;
p = (int* ) malloc (1000 *sizeof (int));
................
}
int C(int n) {
return p[n];
}
但是會出現
[linker erorr] undefined reference to 'p'
請問各位extern 不能這樣用嗎?
還是我哪邊寫錯了
請各位幫忙解答一下 感謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.141.81
1F:→ weiyucsie:你的p是區域變數@@ scope不太對吧? 05/19 02:15
2F:推 ledia:extern 不是用來在函數間傳遞,而是宣告(檔案)外部有這個變數 05/19 11:04