invalid use of array with unspecified bounds

lkj2016 2016-12-19 09:11:57
#include<stdio.h>
void print(int (*p)[],int i,int j)
{
int a,b;
for(a=0;a<i;a++)
for(b=0;b<j;b++)
printf("%d ",*(*(p+i)+j));
return ;
}

void main()
{
int a[2][3]={1,2,3,4,5,6};
int i,j,(*p)[3];
p=a;
scanf("%d,%d",&i,&j);
print(a,2,3);
for(i=0;i<2;i++)
for(j=0;j<3;j++)
printf("%d ",*(*(p+i)+j));
}
这错哪里了
...全文
1129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-12-20
  • 打赏
  • 举报
回复
请那些喜欢将数组作为函数参数传来传去或作为函数返回值的码农思考一下为什么不把整个互联网内容当作函数参数传来传去或作为函数返回值呢?
小灸舞 版主 2016-12-20
  • 打赏
  • 举报
回复
两维数组参数传递只能省去第一维数,因为如果全省去的话将无法确认其中是如何分配的
paschen 2016-12-19
  • 打赏
  • 举报
回复
void print(int (*p)[],int i,int j) 改成: void print(int (*p)[3],int i,int j)
wang0635 2016-12-19
  • 打赏
  • 举报
回复
void print(int (*p)[3],int i,int j)

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧