69,373
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a[3][4]={0};
int i=0,j=0;
int *p;
for(p=a[j]; j<3; j++)
{
for(i=0;i<4;i++)
{
*(p+i)=i;
}
}
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
printf("a[%d][%d]=%d\t", i, j, a[i][j]);
putchar('\n');
}
return 0;
}
for(p=a[j]; j<3; j++) 改成 for(p=a[0]; j<3; p+=4, j++)
[root@bogon temp]# cat t5.c
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a[3][4]={0};
int i=0,j=0;
int *p;
for(j=0; j<3; j++)
{
p=a[j];
for(i=0;i<4;i++)
{
*(p+i)=i;
}
}
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
printf("a[%d][%d]=%d\t", i, j, a[i][j]);
putchar('\n');
}
return 0;
}
[root@bogon temp]# gcc -g -o t5 t5.c
[root@bogon temp]# ./t5
a[0][0]=0 a[0][1]=1 a[0][2]=2 a[0][3]=3
a[1][0]=0 a[1][1]=1 a[1][2]=2 a[1][3]=3
a[2][0]=0 a[2][1]=1 a[2][2]=2 a[2][3]=3
for(p=a[j]; j<3; j++)
//应该是
for(;p=a[j], j<3; j++)