求大佬指点
为什么二维数组temp无法打印 我也不知是否赋值正确
//list是一个 link li's't
void creat_matrix(NAME **list,int leng)
{
int i,j,a,l;
NAME *cur=*list;
l=leng+1; //例如l=11
int temp[l][l];
//创建目标数组m
int **m;
m = (int **)malloc( sizeof(int*) * leng );
for( i=0; i<leng; i++ )
{
m[i] = (int *)malloc( sizeof(int) * leng );
}
//测试过m创建正常
memset(temp,0,sizeof(temp));
for(i=0;i<l;i++)
{
for(j=0;j<l;j++)
{
if(i==0&&j==0)
{
temp[0][0]=0;
printf("%5d",temp[i][j]);//这测试可以打印正确
}
else
{
a=cur->num;
//printf("%d",a);
temp[i][j]=a;
//printf("%5d",temp[i][j]); //这测试可以打印正确
cur=cur->next;
}
}
}
**测试temp是否赋值成功,就是在这里无法打印出temp 导致后面无法运行**
for(i=0;i<l;i++)
{
for(j=0;j<l;j++)
{
printf("%5d",temp[i][j]);
}
printf("\n");
}
//我想把temp[1][1]~temp[11][11]写入目标二维数组
for(i=0;i<leng;i++)
{
for(j=0;j<leng;j++)
{
m[i][j]=temp[i+1][j+1];
}
}
//测试无法打印
for(i=0;i<leng;i++)
{
for(j=0;j<leng;j++)
{
printf("%5d",m[i][j]);
}
printf("\n");
}
}