此代码段中使用 thread##_type
的目的是什么?
我理解下划线t(_t)
作为命名约定来识别类型,下划线类型(_type)
也是,通常在typedef
声明。我也理解 macros
中的 ##
表示连接。 _type
是否还有其他用途? (比如双下划线 __FILE__
的用法)?
#define THREAD_TYPE(thread)
typedef struct \
{ \
pthread_t pthread; \
int err; \
} thread##_type;
最佳答案
_type
在C语言中没有特殊含义,这段代码只是按照作者选择的方式装饰名称,仅此而已。
关于在预处理器指令中组合 ## 和 _type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47572916/