交换两个数为什么一定要用指针??
voidswap(inta,intb){inttemp;temp=a;a=b;b=temp;}这个为什么不行???...
void swap(int a,int b){
int temp;
temp = a;
a = b;
b = temp;
}
这个为什么不行??? 展开
int temp;
temp = a;
a = b;
b = temp;
}
这个为什么不行??? 展开
5个回答
展开全部
不一定非要指针的啊 数组也可以~
你那个是传值 那个改变值以后不算.
指针和数组都是穿地址 ~值会跟着变
你那个是传值 那个改变值以后不算.
指针和数组都是穿地址 ~值会跟着变
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为a,b是临时变量,即使改了外面调用的也不会改的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个是在栈里的值,一个是地址。换了地址才能换过来……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个很简单的算法 #define SWAPPING(a, b) {a ^=b; b ^=a; a ^= b;}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询