use*_*467 5 c struct types static-array
如何在 C 中指定静态数组的动态数组?
我想制作一个包含两个静态数组动态数组的结构。
struct indexed_face_set {
double * [3] vertices;
int * [3] faces;
};
Run Code Online (Sandbox Code Playgroud)
这应该包含一个动态的顶点列表,每个是 3 个双精度,以及一个动态的面列表,每个都是 3 个整数。
语法是,C 的声明方法并不是最干净的,C++ 继承了这一点......
double (*vertices)[3];
Run Code Online (Sandbox Code Playgroud)
该声明意味着这vertices
是一个指向double [3]
对象的指针。请注意,需要括号,否则(如 中double *vertices[3]
)它将意味着 3 的数组double*
。
一段时间后,您最终会习惯表达式中括号的倒置方式......