发布网友 发布时间:2022-06-09 03:30
共3个回答
热心网友 时间:2023-09-14 10:58
宏定义就是文本替换,将代码里出现该宏的地方,替换为宏定义的文本。不过需要特别注意宏定义,因为这个比较容易出错。比如你上面定义的热心网友 时间:2023-09-14 10:59
这种宏有点类似于函数
#define TIN_TRIANGLE(i) (i/3)
这个是返回i除以3的值,比如你使用TIN_TRIANGLE(9),那么结果就是3
#define TIN_CORNER(i) (i%3)
这个是返回i除以3的余数
#define TIN_INDEX(t,c) (t*3+c)
这个是返回第一个数乘以3加上第二个数的值,比如TIN_INDEX(1,2),那么结果就是5
#define TIN_NEXT(c) ((c+1)%3)
这个是返回c+1除以3的余数
#define TIN_PREV(c) ((c+2)%3)
返回c+2除以3的余数
热心网友 时间:2023-09-14 10:59
这个就是文本替换,将定义之后的出现 TIN_TRANGLE(i)的地方全部换成 (i/3),