这两天在写⼀个linux下的C项⽬,需要控制⼀张临时表,这张表由动态结构体数组构成。
需要实现动态数组的创建及其操作
结构体如下所⽰:
/*创建⼀个的动态数组的结构体*/
typedef struct base_array{
int size ;
int count ;
struct base *data;
}base_array;
/*创建⼀个的结构体*/
影响食品安全的因素
typedef struct base{
char id[6] ;
int led;
int way;
struct locomotive *next ;
}base;
/*创建⼀个的动态数组*/
void create_base_table(base_array *L){
茉莉酮酸int number = 5 ; //动态数组的初始个数
int i;
char string[6] ;
p = (base *)malloc(number*sizeof(base)) ;//提前分配内存
L->size = number;
L->count = 0 ;
L->data = p ;突发公共卫生事件与
传染病疫情监测信息报告管理办法
epad
for(i=0;i<number;i++){
sprintf(string,"%d",i) ;
strcpy(L->data[i].id,string) ;
L->data[i].next = NULL ;
高尔基资料L->count++ ;
printf("-%s-",L->data[0].id) ;
}
}
蔗糖浓硫酸【注】不能直接在结构体⾥分配内存,即不能L->data = (base *)malloc(number*sizeof(base))