C语言编程中经常可以看到在结构体中定义宏,由于宏在预处理的时候即被替换,因此结构体中定义的宏的作用域仍为从定义处到文件结尾(如果没有#undef),所以在结构体中定义宏与在结构体外定义变量没有区别;   (有待更进一步考究)

  在结构体定义宏的好处是方便阅读:使程序员更容易理解该宏的逻辑意义;

  可以通过 : gcc -E *.c  查看预编译之后的文件内容;

 

参考:

http://blog.chinaunix.net/uid-27120815-id-3273577.html

posted on 2012-10-31 21:56  bo-study  阅读(1905)  评论(0编辑  收藏  举报