69,369
社区成员
发帖
与我相关
我的任务
分享
BaseInfoArray* BaseInfoArray_new(int initial_size) {
BaseInfoArray* self = (BaseInfoArray*) malloc( sizeof(BaseInfoArray) );
self->content = (BaseInfo**) calloc( initial_size, sizeof(void*) );
self->size = initial_size;
return self;
}
BaseInfoArray* BaseInfoArray_new(int initial_size) {
BaseInfoArray* self = (BaseInfoArray*) malloc( sizeof(BaseInfoArray) );
self->content = (BaseInfo**) calloc( initial_size, sizeof(void*) );
return self;
}
BaseInfo_jl[i]->meterID
typedef struct {
int size;
BaseInfo** content;
} BaseInfoArray;
// constructor
BaseInfoArray* BaseInfoArray_new(int initial_size) {
BaseInfoArray* self = (BaseInfoArray*) malloc( sizeof(BaseInfoArray) );
self->content = (BaseInfo**) calloc( initial_size, sizeof(void*) );
return self;
}
// destructor
void BaseInfoArray_free(BaseInfoArray* self) {
// 元素的释放也许不由容器负责,这里我们只释放容器。
free(self->content);
free(self);
}
// 访问时首先检查i是否越界,然后返回第i个元素。实现略。
BaseInfo* BaseInfoArray_get(int i);
// 如果i越界,重新分配内存,然后储存元素到i位置。实现略。
void BaseInfoArray_set(int i, BaseInfo* content);
int NUM = 4;
LPBaseInfo BaseInfo_jl = (LPBaseInfo)malloc(sizeof(BaseInfo)*NUM);
strcpy(BaseInfo_jl[0].meterID,"12");
LPBaseInfo BaseInfo_jl = (LPBaseInfo)malloc(sizeof(BaseInfo)*NUM);