主要是指针的意思不明白
改成 printf("%d\n", *(*pa+i));这样就能输出正确,又是为啥
收起
当前问题酬金
¥ 0 (可追加 ¥500)
支付方式
扫码支付
支付金额 15 元
提供问题酬金的用户不参与问题酬金结算和分配
支付即为同意 《付费问题酬金结算规则》
因为pa相当于二维数组这样pa+1就会指向元素10之后的地址空间了。也就是说pa+i就是跳过i个arr数组长度。pa就是二维数组行指针,该二维数组一共10行,arr只是其第一行。而 * ( * pa +i)中,* pa就相当于指向第0行第一个元素地址,这是后再加i时,这个i只是增加i个int元素,不再是行数了。所以* ( * pa + i)就相当于arr[i]了。
报告相同问题?