[問題] extern

看板C_and_CPP作者 (懶)時間15年前 (2010/04/14 15:00), 編輯推噓3(309)
留言12則, 6人參與, 最新討論串9/9 (看更多)
不好意思 有個問題想請教版友 我有個a.c 裡面宣告了一個全域變數double b = 0.1; 因為想給d.c使用b 所以在a.h中宣告extern b; 那我在a.c中設定的初始值 d.c能拿到嗎? 還是有其他方法可以建議?謝謝 -- ╔╮ ╭═╦╮╭═╦╗╮ ╮╔══╮╭═╦╮╮ ╔╮╔══╮╭══╮ ╠╣ ╠═╬╣╭╬╩╯╰╦╦╯╠═╦╮║ ╠╣║║╠╣╠╣ ╰═╦╮ ╠╣ ╭║ ╠╣║╰╔╗ ╠╣ ║ ╠╣║ ╠╣║╰╠╣║╰╔╗║ ╠╣ ╰╩═╯╰ ╰╝╚═╩╯ ╰╝ ╚═╩╯╰═╩╯╰ ╰╝╚═╩╯╰═╩╯ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.211.0.80

04/14 15:03, , 1F
試試看就會知道了 答案應該是可以的
04/14 15:03, 1F

04/14 15:09, , 2F
記得在d.c中要include a.h
04/14 15:09, 2F

04/14 16:09, , 3F
extern double b; 不能缺 type
04/14 16:09, 3F

04/14 16:34, , 4F
extern 本來就是給你拿值的阿 不然extern 幹嘛@@?
04/14 16:34, 4F

04/14 16:39, , 5F
extern用來拿值?? extern修飾var是hint這裡宣告的var不
04/14 16:39, 5F

04/14 16:39, , 6F
在這個file內, 到時候應該是linker要去找到該var所在的
04/14 16:39, 6F

04/14 16:40, , 7F
address, 所以與其說拿值, 不如說它們根本會是同一個位
04/14 16:40, 7F

04/14 16:41, , 8F
址吧, 所以根本沒有初值拿不拿得到的問題, 因為根本就是
04/14 16:41, 8F

04/14 16:41, , 9F
同一個不是嗎@_@"
04/14 16:41, 9F

04/14 16:42, , 10F
補字: 這裡宣告的var 其定義 不在這個file內.
04/14 16:42, 10F

04/14 16:48, , 11F
啊, 精華區: z->3->17->1 其實有....XD
04/14 16:48, 11F

04/19 14:41, , 12F
謝謝!
04/19 14:41, 12F
文章代碼(AID): #1BnMWdyr (C_and_CPP)
討論串 (同標題文章)
完整討論串 (本文為第 9 之 9 篇):
問題
3
12
問題
5
13
問題
1
1
問題
1
2
問題
2
8
問題
3
10
問題
0
10
文章代碼(AID): #1BnMWdyr (C_and_CPP)