这是一个简单的演示.但Xcode向我显示错误'粘贴形成' - > client_port',一个无效的预处理标记从宏'PARSE_COLUMN'cfg扩展 - > ## column = value'
我只是想快速设置我的struct的值,以及'cfg - > ## column = value'的问题是什么
#include <stdio.h>
#define PARSE_COLUMN( column, value ) \
printf("parse column:%s\n",#column);\
cfg->##column = value
typedef struct {
int client_port;
} server_config;
int main(void) {
server_config *cfg = new server_config;
PARSE_COLUMN(client_port,123);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
##
用于连接两个宏参数,例如column##value
将client_port123
在上面的代码中交换.
你不需要在这里使用它,你可以写cfg->column = value
.
归档时间: |
|
查看次数: |
75 次 |
最近记录: |