有个结构上的问题
写VB写久了有点疑惑,不知道C是否可以这样做?我要创个结构阵列,第一层预设4个,第二层要动态增加,
那每个第一层对上第二层的数量,是否可以皆不相同?
简单讲我要将一个档案依规则拆成四个档案
类似 :
A[0][10]
A[1][20]
A[2][30]
A[3][40]
程序代码:
#include <stdlib.h>
#include <stdio.h>
struct Log
{
int Line;
char *ErrorLog;
};
int main(int argc, char* argv[])
{
int i=0,j=0;
struct Log **A = (struct Log**)malloc(4*sizeof(struct Log*));
for(i=0;i<4;i++)
{
A[i]=(struct Log*)malloc(10*sizeof(struct Log));//这里要动态增加 (因为是针对每个i增加j,所以想是不是可以不一样?)
for(j=0;j<10;j++)
{
A[i][j].ErrorLog ="";
A[i][j].Line =0;
}
}
free(A);
return 0;
}
因为VB好像第二维必须固定长度,第一维才能动态增加,脑袋有点转不过来








