#include <stdio.h> void main() { int *p1,*p2,*p,a,b; a=12;b=34; p1=&a; p2=&b; if(a<b) {p=p1;p1=p2;p2

xiaobai0328 2022-04-24 00:10:24

#include <stdio.h>

void main()

{ int *p1,*p2,*p,a,b;

a=12;b=34;

p1=&a;

p2=&b;

if(a<b)

{p=p1;p1=p2;p2=p;}

printf("a=%d,b=%d\n",a,b);

printf("max=%d,min=%d\n",*p1,*p2);

}

既然地址改变了那为什么a的值跟b的值不会改变?

...全文
179 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zara 2022-04-24
  • 打赏
  • 举报
回复
地址类似于门牌号,地址变了 相当于门牌挪其它地方了,原来的房。还是原来的房,不会变成现在的房。 要改变其中的内容,要通过指针进行内容设置或交换,而不是仅仅改变指针本身。
xiaobai0328 2022-04-24
精选
  • 举报
回复
@zara 谢谢

70,018

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧