如何在 C 中编译时打印 sizeof ()的结果?
现在,我使用一个静态断言(根据其他 Web 资源自制的)将 sizeof ()结果与各种常量进行比较。虽然这种方法有效,但它远非优雅或快速。我还可以创建变量/struct 的一个实例并查看映射文件,但是这也没有直接调用/command/操作符那么优雅和快速。此外,这是一个使用多个交叉编译器的嵌入式项目... ... 因此构建一个示例程序并将其加载到目标,然后读出一个值比上述任何一个都更麻烦。
在我的例子中(旧的 GCC) ,#warning sizeof(MyStruct)
在打印警告之前并不实际解释 sizeof ()。