新手求助!error C2440: '=' : cannot convert from 'int *' to 'int *[4]'
实在不晓得怎么错的,请老师们指点!
#include<stdio.h>
main()
{
int a[3][4];
int i,j,*p[4];
for(i=0;i<3;i++){
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
}
p=a;
for(i=0;i<3;i++){
for(j=0;j<4;j++)
printf("%d",*(*(p+i)+j));
printf("\n");
}
} c
[解决办法]
int (*p)[4];
注意运算符优先级
[解决办法]
int i,j,(*p)[4];
你这个是数组指针吧。
指针数组,不是这种用法。
[解决办法]
int *p[4];
p是数组
C里面 数组 = XX;一直都是Error 这个常识应该是学数组的第一时间就会介绍的
你这里的做法
int* p[3] = {a[0], a[1], a[2]};
[解决办法]
多看书再码吧