本人在学C语言指针,代码想要实现两个数从大到小输出,但是为什么实现不了?利用指针交换地址
#include
void swap(int *p1,int *p2)
{
int *temp;
temp=p1;
p1=p2;
p2=temp;
}
void main()
{
int a,b;
int *pointer_1,*pointer_2;
scanf("%d %d",&a,&b);
pointer_1=&a;
pointer_2=&b;
if(a<b)
swap(pointer_1,pointer_2);
printf("%d %d\n",*pointer_1,*pointer_2);
}
C语言指针问题,通过指针交换地址
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
8条回答
Sakura__Lu 2016-10-10 15:38关注你这是没弄清楚指针,指针就是一个地址,相当于你家的门牌号一样,只是一个标识数据存放位置的地方, 所以你要用指针指向的数据的时候应该是*p1而不是直接用p1,p1只是你家的门牌号而不是你家~( ̄▽ ̄~)~
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 2无用 2