
1个回答
展开全部
首先解释下f(int a,int*b)这个函数,这个函数中定义了一个静态变量c=2,然后有c=c*a,再把c的值赋给*b,返回c的值。
再看主函数main中,b=4,然后调用函数f(b,*b),并且把这个函数的值赋给a,在上面解释了f(b,*b)这个函数的意思,那么,这里b=4,c=2*4=8,*b=8,函数返回c的值也就是8,所以主函数中a=8,
再次调用函数a=f(a,*b),同理,c=2*8=16.*b=16,经过这一步后,a=16,b=16,所以最后结果显示“a=16,b=16”
这里面要注意*b和&b的意思,*b是定义一个指针,&b是取b的地址(指针)。
望采纳!
再看主函数main中,b=4,然后调用函数f(b,*b),并且把这个函数的值赋给a,在上面解释了f(b,*b)这个函数的意思,那么,这里b=4,c=2*4=8,*b=8,函数返回c的值也就是8,所以主函数中a=8,
再次调用函数a=f(a,*b),同理,c=2*8=16.*b=16,经过这一步后,a=16,b=16,所以最后结果显示“a=16,b=16”
这里面要注意*b和&b的意思,*b是定义一个指针,&b是取b的地址(指针)。
望采纳!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询