回答
如果您在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. 在另一个文件中使用define常量
- 2. 你可以为一个变量使用多个elifs吗?
- 3. 我可以从另一个文件访问变量吗?
- 4. 在另一个文件中使用另一个类的变量
- 5. 你可以在Coldfusion中一次性定义多个变量吗?
- 6. 你可以在if子句中存储一个变量吗?
- 7. 你可以在LESS CSS的mixin中设置一个变量吗?
- 8. AngularJS - 你可以在一个JavaScript块中引用一个中继器变量吗?
- 9. 你可以使用环境变量在配置文件中fluentd
- 10. 一个〜/ .ssh/config文件可以使用变量吗?
- 11. 你可以在t4模板中使用全局变量吗?
- 12. 你可以在C#连接器中使用MySQL @ session变量吗?
- 13. 你可以有一个变量在JavaScript中的变量?
- 14. 你可以为scala中的另一个变量创建别名吗?
- 15. 我可以在另一个包含文件中使用包含文件的变量吗?
- 16. 你可以一行一行写一个PHP变量吗?
- 17. mod_rewrite如果你在整个地方使用表达式,你可以把它放在一个“变量”中吗?
- 18. 你可以使用index.php中配置文件的全局变量 - Fat Free Framework吗?
- 19. 我可以在Golang的另一个模板中使用模板变量吗?
- 20. 你可以在谷歌网站的文本中有“变量”吗?
- 21. 你可以在Android中创建一个.dat文件吗
- 22. 你可以在Vb.Net中“标记”一个文件吗?
- 23. 你可以使用count()作为整个列表而不是一个变量吗?
- 24. 你可以将多个文件合并成一个文件吗?
- 25. 在iOS中,你可以使用NSDictionary作为文本文件吗?
- 26. 你可以在.Net中锁定一个应用程序变量吗?
- 27. 你可以在SELECT中分配一个变量,然后在同一个SELECT中使用它吗?
- 28. 一个变量可能指向另一个变量吗?
- 29. 你可以在另一个Dataframe中嵌套Spark Dataframe吗?
- 30. 你可以在另一个excel表格中运行宏吗?
define是一个预处理指令。编译代码时将其内联替换。您需要在头文件(包含)中定义它。 – 2013-04-29 13:35:06