这个C程序输出是0,0为什么啊

如题所述

调用 func ( a, b) 时, 你可以理解为创建了两个新的变量(形参 p1, s),然后 p1 = a, s = b
方便理解,这就相当于 p1 = &a, s = &b

就是说取到 a 数组的地址, 赋给形参 p1 (内存里一个真实的变量,和 a 无关, 只是其值等于 a 的地址)
同理,取到 b 数组的地址, 赋值给形参 s

然后 func 中各种操作, 都没有碰 s,只有一句 s = t; 这句话是把 s 这个形参里的地址值改成了和临时变量 t 一样的值。
这和数组 b 没有半毛钱关系, 所以 b 没有变。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-03-01
shaking the bottle to get out

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网