1个回答
展开全部
整型变量m的数值是3,取m的地址是&m(它指向数值3),作为函数f的参数;
调用函数f(int *s),即整型指针变量s和&m一样(它们都指向数值3);
s=&k,取整型变量k的地址是&k(它指向数值5),赋给s,此时s和&k一样(它们都指向数值5);
*s=k,取k的数值5赋给s指向的数值,s不变,但它指向的数值变成5,即&k指向的数值也改变成5。
因此,m的值还是3,k的值还是5。
调用函数f(int *s),即整型指针变量s和&m一样(它们都指向数值3);
s=&k,取整型变量k的地址是&k(它指向数值5),赋给s,此时s和&k一样(它们都指向数值5);
*s=k,取k的数值5赋给s指向的数值,s不变,但它指向的数值变成5,即&k指向的数值也改变成5。
因此,m的值还是3,k的值还是5。
更多追问追答
追问
为什么m不是5,不是m的地址指向k了吗
追答
看清楚了,回答已经逐行解释了,没有一行代码是你说的这个意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |