int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[5],*q=p+2;

日期:2019-10-02 01:53:29 人气:1

int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[5],*q=p+2;

你的程序的确很绕啊。但是在我想了一下换是明白了。: 你只要把你每次改变b记下来就明白了 我给你说10吧 28也是一样的 首先b = 2; 之后fun函数传过去了a[2]的地址就是3 ,经过运算函数返回了b的值是5 ,在接着就是 b=fun(&a[i])+b;这句 最后b就被改写成了10了 最后输出就是10 第二次循环b的值是10 不是2 这个关键的 那28也就是这个道理了。明白了吧!! 这里我就是说一下为什么第一次循环是10 因为你的程序只是运行了一次,所以b的初始化只
    A+
热门评论