要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。 在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成为宏定义。那么究竟是用函数好,还是宏定义好?这就要求我们对二者进行合理的取舍。 我们来看一个 ...
要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。 在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成为宏定义。那么究竟是用函数好,还是宏定义好?这就要求我们对二者进行合理的取舍。 我们来看一个 ...
忘了啥时候记的笔记了 @ 目录 宏定义 1.不带参数的宏定义: 2.带参数的宏定义: C语言宏定义技巧(常用宏定义) 1,防止一个头文件被重复包含 ...
...
1. 利用define来定义 数值宏常量 #define 宏定义是个演技非常高超的替身演员,但也会经常耍大牌的,所以我们用它要慎之又慎。它可以出现在代码的任何地方,从本行宏定义开始,以后的代码就就都认识这个宏了;也可以把任何东西定义成宏。因为编译器会在预编译的时候用真身替换替身,而在 ...
注意区分宏定义函数和普通函数定义的区别: 宏定义中表达式的参数要加括号,否则可能会出错(运算的优先级): 同理计算的优先级问题还可以出现的main()函数中表达式中: 所以一般是不建议利用宏定义来表示太多的计算表达式,很可能会出现表达式计算错误。 ...
写好C语言,漂亮的宏定义很重要,使用宏定义可以防止出错,提高可移植性,可读性,方便性等等。 下面列举一些成熟软件中常用的宏定义: —————————————— 1、防止一个头文件被重复包含 —————————————— 2、重新定义一些类型,防止由于各种平台和编译器 ...
下面列举了一些常见的宏写法: 我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起。 当宏参数是另一个宏的时候需要注意的是凡宏定义里有用''#''或''##''的地方宏参数是不会再展开。 Linux内核中的一些宏定义(前面 ...
以前一直以为宏的定义挺简单的,没有写过长的宏函数,最常用的是MAX()的定义,今天写一个宏函数的时候,相对于MAX()来说,稍微有点长,然后踩了一个小坑。 一开始将宏函数定义的时候,为了书写方便,将一个函数写成了几行,但是没有用连接符号连接起来,类似于下面 GCC总是提示ret ...