#define(1)define常用操作
#define(2) #define和typedef 的区别
https://blog.csdn.net/lqy971966/article/details/110946843
1. 简单的define定义
#define MAXTIME 1000
一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写
类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的文本替换
2. define的“函数定义”
定义宏时,要将整个宏表达式用括号包含
例如: 求最小值的宏
#ifndef MIN
#define MIN(a,b) (((a)<(b))?(a):(b))
#endif
3. 关于宏#define IN、OUT和INOUT的说明
例子
在工程中会有类似于上面这种宏定义出现
#ifndef IN
#define IN
#endif
#ifndef OUT
#define OUT
#endif
#ifndef INOUT
#define INOUT
#endif
这些宏标记宏 表示输入参数,仅仅是一个标识作用,没有其他意思。
参考
https://blog.csdn.net/jays_/article/details/79713946
4. #define QUEUE_INFINITE_DEPTH (~0UL)
0UL是无符号长整型 0, ~ 表示按位取反,即:0xffffffff 最大值
有符号数和无符号数详解:
https://blog.csdn.net/lqy971966/article/details/106033332
5. typedef 和 define 区别
typedef 和 #define 的区别
https://blog.csdn.net/lqy971966/article/details/110946843
6. #define IGNORE_PARAM(X) ((X) = (X))
为了消除告警
因为告警提示 x未使用
7. #define 求数组长度
#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
求数组长度