gpt4 book ai didi

c - 通过初始化程序设置结构数组元素的语法?

转载 作者:太空宇宙 更新时间:2023-11-04 01:28:34 26 4
gpt4 key购买 nike

我有以下 C 代码:

typedef struct {
int x,y;
} Point2D;

Point2D data[5];

稍后在我的代码中(即不在 data 初始化期间),我想根据 x/y 值设置数据的各个元素。两语句代码很简单:

Point2D pt = {.x = a, .y = b};
data[3] = pt;

但是在 C 中有没有一种方法可以在一条语句中做到这一点?以下想法似乎都不是有效的 C99 代码(对于 GCC 4.8.2):

data[3] = {.x = a, .y = b};
data[3] = Point2D{.x = a, .y = b};
data[3] = Point2D(a,b); //C++-like syntax

最佳答案

使用复合文字:

data[3] = ( Point2D ){.x = a, .y = b};

关于c - 通过初始化程序设置结构数组元素的语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27168647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com