# ## \ @# 在宏定义里的作用
# (stringizing)字符串化操作符。其作用是:将宏定义中的传入参数名转换成用一对双引号括起来参数名字符串。
#define STR(str) #str
上述将 STR(srt)转换为 “str”
## (token-pasting)符号连接操作符
\ 换行
#define DEFINE_TASK(cname, fname) \
void cname##_##fname (void* obj){ \
vTaskSuspend(NULL); /* task should first suspend itself */ \
((cname *)obj)->fname(); \
while(1); \
}
将DEFINE_TASK(cname,fname)定义为 chame_fname(void* obj)