无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?

无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?,第1张

概述我有一系列结构.在初始化期间,我需要在条件基础上初始化.说 struct struct_name[arraySize] = { {1, 'a'}, {2, 'b'},#if condition {3, 'c'}#else {4, 'd'}#endif }; 在上面的代码中,我使用预处理指令控制初始化.无论如何,我可以在不使用预处理器指令的情况下进行此条件编译吗? 是 我有一系列结构.在初始化期间,我需要在条件基础上初始化.说

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;}
总结

以上是内存溢出为你收集整理的无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?全部内容,希望文章能够帮你解决无论如何我是否可以在没有预处理器指令的条件基础上初始化成员?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1218237.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存