- 论坛徽章:
- 0
|
请问怎么为一个指针数组动态分配空间呢?
必须这样吗?指针数组能有多大空间?没有必要!其实方法一样的,第一次首先分配N个长度的指针数组对不起!您的代码rule *rule_list[ N ]; 还是没有为rule_list动态分配啊,关键是我不知道N的值有多大,
修改一下:#include <stdio.h>;
#define N 10
typedef struct __rule
{
int num;
char name[20];
int id;
}rule;
void get_rule__list(rule **rule_list);
int main(int argc, char *argv[])
{
rule **rule_list;
rule_list=malloc(N*4);
get_rule__list(rule_list);
return 0;
}
void get_rule__list(rule **rule_list)
{
rule *ptr;
int i;
ptr=malloc(N * sizeof(rule));
for(i=0;i<N;i++)
{
rule_list=ptr+i*sizeof(rule);
rule_list->;num = i;
printf("%d\n",rule_list->;num);
}
} |
|