x210-2021-08-22

2021/8/23 6:30:33

本文主要是介绍x210-2021-08-22,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、预处理的标志:#

2、在预处理阶段,宏替换是不会进行语法检查的,语法检查在编译的过程进行。

3、宏值为了避免语义和优先级的干扰,都知道加小括号进行限定,但是像“#define FUN(x) (1+x)”这样的宏函数除了要外加整体括号还应该对宏参数也加上小括号,即“#define FUN(x) (1+(x))”

4、预定义宏:

__FUNCTION__:函数名

__LINE__:行号

__FILE__:文件名

使用以上三个预定义宏,使用printf()来打印,可以得到该语句所在函数、文件以及行号信息,用于帮助调试的进行。5、在条件编译启用的过程中,如果选择每一次调试都进入源文件写上(或解除屏蔽)#define DEBUG宏,特别是在插入多段条件编译协助调试时,这样的操作就显得不太简便了,为此,在gcc编译命令中加入“-D宏名”来选择开启条件编译,如下图二。6、宏展开:

6.1、单#:字符串化,注意在下面的掉用处,printf函数中并没有使用双引号,这也是可行的。6.2、##:连接符化,实质上就是提取公因式,如果宏名前缀很长时使用可以简化语句,以达到突出重点内容的效果,在下面的示例中,如果需要打印buffersize2,这时就可以修改printf中宏SIZE(x)所传入的参数,能省去再次打宏名buffersize2这么长的一段内容了。7、编译过程提示找不到目录,可以在-o之前加上"-I 指定的dir"。



这篇关于x210-2021-08-22的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程