m0_62820245 2021-10-18 20:40 采纳率: 100%
浏览 75
已结题

二维数组指针含义*(p+i)

#include<stdio.h>

int main()
{
double score[][4]={{23.3,43.1,54.4,65.4},{45.2,32.1,45.9,12.2},{45.8,65.9,74.8,65.3}};
double *search(double(*pointer)[4],int n);
double *p;
int i,m;

printf("第几个人?");
scanf("%d",&m);

printf("第%d个人的成绩是:\n",m);

p=search(score,m);

for(i=0;i<4;i++)
{
  printf("%5.2f\t",*(p+i));//这里为什么不是*((*p)+i),*(p+i)不是地址吗
}

}

double *search(double(*pointer)[4],int n)
{
   double *p;
   p=*(pointer+n-1);
   return p;

}
  • 写回答

2条回答 默认 最新

  • 关注

    p+i,实质是指向p数组的第i个元素的指针,*(p+i)就是这个指针的内容
    其实i就是个偏移量。理论上p是一个地址,p+i值为(p+i)*单个元素的字节长度
    *(p)+i是取当前元素值加i 没有意义

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

报告相同问题?

问题事件

  • 系统已结题 10月26日
  • 已采纳回答 10月18日
  • 创建了问题 10月18日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么