昨晚我被问了一个C语言的问题,我不知道答案,因为我从大学开始就不太用C了,所以我想也许我可以在这里找到答案,而不是忘记它。
如果一个人有这样的定义:
#define count 1该用户是否可以使用变量名count中的1找到该变量?
我不这样认为,因为我认为计数会指向1,但看不到1如何指向count。
发布于 2008-09-24 14:16:52
一般来说,不是。
首先,#define不是一个变量,它是一个编译器预处理器宏。
当编译器的主要阶段开始工作时,名称已经被值替换,并且名称"count“将不存在于编译的代码中的任何地方。
对于变量,不可能在运行时找出C代码中的变量名称。这些信息不会被保留。与Java或C#等语言不同,C语言在编译成汇编语言时根本不保留太多的元数据。
https://stackoverflow.com/questions/127391
复制相似问题