re

宏定义的使用

2018-03-17  本文已影响0人  无惧天涯

最近看到代码里面有些 宏 蛮有意思的。学习顺便记录一下 。

定义


宏 是一种批量处理的称谓。计算机科学里的宏是一种抽象,它根据一系列预定义的规则替换一定的文本模式。解释器或编译器在遇到宏时会自动进行这一模式替换。(摘自百度百科)

1. 常用宏

判定条件,注意:需要成对出现

#if A==2
#ifdef A
#elif A==4
#ifndef A
直接定义
#define _A_  1

用法一

===

使用宏在根据情况定义变量

#if DLEVEL == 0
    #define STACK 0
#elif DLEVEL == 1
    #define STACK 100
#else
    #define STACK 200
#endif
#ifndef _STOPWATCH_H_
#define _STOPWATCH_H_
#endif

用法二

更具宏注销某代码端或者二选一

//设置0则取消  1则启用
#define RANDN 0
#if RANDN
#define READ_NUM 50000000
unsigned int read_key[READ_NUM];

void read_data()
{
...
}
#endif

# 用法三
> 使用宏代替全局变量防止在gpu上传递变量
`#define NUM_BUCKETS 1111151`”
上一篇下一篇

猜你喜欢

热点阅读