LukaDoncicY77 发表于 2021-12-8 12:25:48

指针变量

#include <stdio.h>
int main()
{
        int *p1,*p2,*p,a,b;
        scanf("%d,%d",&a,&b);
        p1=&a;p2=&b;
        if(a<b)
        {
                p=p1;p1=p2;p2=p;
        }
        printf("%d %d",a,b);
        return 0;
}
红色行 可以换成 p1=&b;p2=&a 吗?

jackz007 发表于 2021-12-8 14:09:50

本帖最后由 jackz007 于 2021-12-8 14:12 编辑

      关键是看你想干什么?目前的代码中定义的指针毫无意义,交不交换指针对最后显示变量 a、b 的值没有任何的影响,包括你所说的 "红色行 可以换成 p1=&b;p2=&a 吗?" 就目前代码的情况,不要说换,你完全可以把与指针相关的代码全部删除,对程序不会有任何一点影响。
      所以,问题的关键是你想干什么?

最强废铁h 发表于 2021-12-8 16:35:50

你这,指针在你这也没有用啊

恶魂稽 发表于 2021-12-12 21:15:21

要区分*p与p的区别,现在的代码只是交换了地址,没有交换任何a,b的值
页: [1]
查看完整版本: 指针变量