相关疑难解决方法(0)

如何根据C编程语言标准初始化结构

我想初始化一个struct元素,在声明和初始化中拆分.这就是我所拥有的:

typedef struct MY_TYPE {
  bool flag;
  short int value;
  double stuff;
} MY_TYPE;

void function(void) {
  MY_TYPE a;
  ...
  a = { true, 15, 0.123 }
}
Run Code Online (Sandbox Code Playgroud)

这是MY_TYPE根据C编程语言标准(C89,C90,C99,C11等)声明和初始化局部变量的方法吗?或者有什么更好或至少工作?

更新我最终得到一个静态初始化元素,我根据自己的需要设置每个子元素.

c struct initialization

435
推荐指数
10
解决办法
73万
查看次数

C中结构的指定初始值设定项和复合文字

我有以下结构:

typedef struct my_struct {
    int a;
    int b;
    int *c;
} my_struct;
Run Code Online (Sandbox Code Playgroud)

是:

my_struct n = (my_struct) { .b = 3 };
Run Code Online (Sandbox Code Playgroud)

相当于:

my_struct n = (my_struct) { .a = 0, .b = 3, .c = NULL };
Run Code Online (Sandbox Code Playgroud)

关于什么:

my_struct n = (my_struct) { .b = 3, 0 };
Run Code Online (Sandbox Code Playgroud)

c gcc struct initialization

4
推荐指数
1
解决办法
819
查看次数

标签 统计

c ×2

initialization ×2

struct ×2

gcc ×1