struct struct_name[arraySize] = { {1,'a'},{2,'b'},#if condition {3,'c'}#else {4,'d'}#endif };
在上面的代码中,我使用预处理器指令控制初始化.无论如何,我可以在不使用预处理器指令的情况下进行此条件编译吗?
解决方法 是的,使用三元运算符,就像这样.#include <stdio.h>struct struc { int number; char letter; };int main(){ int condition = 1; struct struc array[] = {{1,{condition ? 3:4,condition ? 'c':'d'}}; return 0;}总结
以上是内存溢出为你收集整理的无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?全部内容,希望文章能够帮你解决无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)