相关疑难解决方法(0)

如何将数组的所有成员初始化为相同的值?

我在C中有一个大数组(如果有所不同,则不是C++).我想将所有成员初始化为相同的值.我发誓我曾经知道一个简单的方法来做到这一点.我可以memset()在我的情况下使用,但是没有办法在C语法中构建这样做吗?

c arrays array-initialize initialization

934
推荐指数
13
解决办法
179万
查看次数

在结构中初始化typedef数组

我正在制作一个Camera结构.struct使用了一个vec3定义的typedef float vec3[3].

初始化vec3我做vec3 vector = {0.,0.,0.};

我的Cameras结构是这样的:

typedef struct Cameras {
    vec3 eye;
    vec3 target
} Camera;
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时:

Camera cam;
cam.eye = { .5, 1., 0. };
Run Code Online (Sandbox Code Playgroud)

它崩溃了,编译器告诉我:expression must be modifiable.

我认为这是与指针错误,但没有和替换vec3 eye,以vec3 * eyecam->eye = {.5,1.,0.}改变什么.

我是以错误的方式创建结构还是一个非常常见的问题C而我只是盲目的?

在这里,我的目标不仅是初始化数组,还要在创建后访问数据并修改/传入函数.

c arrays struct typedef

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

标签 统计

arrays ×2

c ×2

array-initialize ×1

initialization ×1

struct ×1

typedef ×1