假设我有以下结构:寿命
typedef struct plane_t Plane;
struct plane_t{
Point p1;
Point p2;
Point p3;
};
typedef struct arrangement_t* Arrangement;
struct arrangement_t{
//TODO add fields here
int maxPlanes;
int curPlanes;
Plane *planes;
};
和我有以下功能:
Plane planeCreate(Point point1, Point point2, Point point3){
Plane newPlane = {{point1.x, point1.y, point1.z}, {point2.x, point2.y, point2.z}, {point3.x, point3.y, point3.z}};
return newPlane;
}
假设我正在写一个函数,它增加了一个平面到arrangment_t结构中的阵列平面中。
我能做到以下几点:
arrangement->planes[arrangement->curPlanes] = planeCreate(plane.x, plane.y plane.z);
或者这个结构退出该功能意味着我必须把它按以下方式后会“消失”:
arrangement->planes[arrangement->curPlanes] = malloc(sizeof(struct plane_t));
arrangement->planes[arrangement->curPlanes].x=plane.x;
arrangement->planes[arrangement->curPlanes].x=plane.y;
arrangement->planes[arrangement->curPlanes].x=plane.z;
感谢您的回答! –
@Doppelganger不客气。 – 2013-08-03 04:39:04