回答
如果您在abc.c中有#define NAME "supreeth"
,那麼您肯定可以在另一個文件def.c
中使用同名的extern變量,這與編譯器相關。如果你暗示這兩者之間存在某種依賴關係,那麼這種依賴關係就不會發生。 很顯然,這樣做是令人困惑和不好的想法。
您不能使用extern
與宏。但如果你想看到許多C文件宏
把你的宏定義
#define NAME "supreeth"
在頭文件中像def.h
在隨後包括您def.h您C代碼,然後你可以在你的C文件中使用你的宏,如果你包含所有其他C文件def.h
什麼是可能的?沒有變量,'extern'的概念不適用。 – 2013-04-29 14:45:42
我不是說用extern我可以在頭文件中定義他的宏,然後他可以從他的C文件中看到它。可能是我必須更具體,我會更新我的答案 – MOHAMED 2013-04-29 14:47:17
在你的代碼中NAME
不是一個變量。這是一個預處理器符號,這意味着文本NAME
將在字符串"supreeth"
的輸入中隨處替換。這發生在每個文件中,所以說它是「外部」是沒有意義的。
如果一個特定的C文件編譯時沒有#define
,則任何使用NAME
都將保持原樣。
- 1. 使用另一個php文件中的「Define」變量
- 2. 在另一個文件中使用define常量
- 3. 你可以爲一個變量使用多個elifs嗎?
- 4. 你可以把PHP文本變成一個變量嗎?
- 5. 你可以在同一個sass mixin中使用變量和可選參數嗎?
- 6. 你可以在另一個域所調用的文件上使用PHP Session嗎?
- 7. 我可以從另一個文件訪問變量嗎?
- 8. 你可以在if子句中存儲一個變量嗎?
- 9. 你可以在Coldfusion中一次性定義多個變量嗎?
- 10. 你可以在Go中一次聲明多個變量嗎?
- 11. 你可以在LESS CSS的mixin中設置一個變量嗎?
- 12. 你可以在Salt Pillar中定義一個變量嗎?
- 13. AngularJS - 你可以在一個JavaScript塊中引用一箇中繼器變量嗎?
- 14. 在另一個文件中使用另一個類的變量
- 15. 我們可以在c中的#define指令中聲明一個變量嗎?
- 16. 你可以使用環境變量在配置文件中fluentd
- 17. 你可以給變量聲明添加一個條件嗎?
- 18. 一個〜/ .ssh/config文件可以使用變量嗎?
- 19. 你可以使用按鈕設置變量並在另一個類中使用它嗎?
- 20. 你可以在C#連接器中使用MySQL @ session變量嗎?
- 21. 你可以在t4模板中使用全局變量嗎?
- 22. 你可以有一個變量在JavaScript中的變量?
- 23. 你可以爲scala中的另一個變量創建別名嗎?
- 24. 你可以一行一行寫一個PHP變量嗎?
- 25. 我可以在另一個包含文件中使用包含文件的變量嗎?
- 26. 你可以從字符串引用一個java變量嗎?
- 27. 可以將變量存儲在另一個存儲類中嗎?
- 28. 你可以在C++的類中有變量的變量嗎?
- 29. 我可以使用變量模板來聲明另一個變量模板嗎?
- 30. mod_rewrite如果你在整個地方使用表達式,你可以把它放在一個「變量」中嗎?
define是一個預處理指令。編譯代碼時將其內聯替換。您需要在頭文件(包含)中定義它。 – 2013-04-29 13:35:06