西瓜太溜 2017-04-13 09:50 采纳率: 100%
浏览 2350
已采纳

请大家指点,c语言中,结构体作为形参传递且结构体中含有二维数组

typedef struct
{
u8 z[3][3];
}Data
void abcd(Data data)
{
data->z[0][0]=3;
}
/
*********************以上均没报错****************************/
void efgh(Data data)
{
data->z[1][1]=2;
abcd(&data);//出错
}
/
************************此句报错**************************************/
..\HARDWARE\CROSS\cross.c(83): error: #167: argument of type "
data **" is incompatible with parameter of type "data *"
程序大致就是这样定义的,不知道该怎么改,卡了好久,请大家帮帮忙,谢谢。

  • 写回答

3条回答 默认 最新

  • 坤昱 《一起学习C语言》专栏作者 2017-04-13 11:23
    关注

    把&去掉,因为你穿入的参数多了一维

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。