小编Shu*_*wal的帖子

如何在传递给C/C++宏之前解析int变量?

我正在尝试执行以下代码:

#define channel1 10
#define channel(id) channel##id

int main(){
    int id = 1;
    cout << channel(id)<<"\n";

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误: error: use of undeclared identifier 'channelid'

相反,我希望输出为10,channel(id)应该预处理,channel1并用10替换值.

有没有办法实现它?

c++ c-preprocessor

-3
推荐指数
2
解决办法
791
查看次数

标签 统计

c++ ×1

c-preprocessor ×1