【发布时间】:2020-01-30 10:40:29
【问题描述】:
您好,我正在寻找 GCC 的解决方案来打印在编译期间计算的值。
有消息杂注,但它们只能打印用户输入字符串。我正在寻找的是一个 printf 样式的输出,我可以在其中输入参数。
示例
printf("hi %s, my value is %d\n", "john", 15);
示例 2:为此搜索解决方案
void dummy(MyObjectReference & obj)
{
#if(sizeof(obj) != 512)
#pragma message "cannot build, your object size is not 512, it is %d", sizeof(obj)
#error "stop build"
#endif
obj.do_stuff();
return obj.get_result();
}
【问题讨论】:
-
显示的代码是C++,所以我去掉了C语言标签。
-
在 C++ 中,您可以使用语言结构(而不是预处理器)来做到这一点
标签: c++ gcc c-preprocessor