C语言 为何选D,请详细解释一下(题13.6)

如题所述

因为这个fun函数基本没有作用 即没有改数组a里的值,也没有改变指针s的值.最后那个printf差不多就是直接输出a[0].追问

*s=*p1+*p2++这不是把两个数组第一个元素想加赋值给了s嘛,为什么不选A

追答

s里面值被改过calloc 这个内存分配函数 执行这句的时候*s=*p1+*p2++ s是指向重分配的内存的。

追问

我还是不太明白😂

追答

你把这段代码输入到电脑 在alloc函数后面输出s的值 你在main里的printf函数后面输出s的值看两个一样不。

温馨提示:答案为网友推荐,仅供参考