导航:网站首页 >
C语言中swap的作用和用法 c语言中swap 是什么意思?
C语言中swap的作用和用法 c语言中swap 是什么意思?
相关问题:
匿名网友:
1.作用:swap的意思是交换两个变量的值,是一个自定义函数。
2.用法:使a和b的值进行互换。
例如:void swap(int*p1,int*p2) //*p1=a;*p2=b;
改变指针指向的地址的值,即a和b的值互换。
3.其他用法
swap1只进行了值传递,所以函数调用结束后形参被释放,不能实现实参的值交换;
swap2直接使用全局变量,这样swap2函数和main函数操作的是同一个变量(地址和值都一样),可以实现值交换;
swap3使用传地址的方式,通过修改内存块来实现变量的值交换,是可以的。
swap4使用引用(&)的方式,这样是给mian函数中待交换的变量起一个别名,并把把别名作为形参在swap4中进行处理,这其实就实现了形参和实参的地址和内容完全一样,当然可以实现值交换,swap4的效果和swap2的一样,但这种定义方式更利于程序的调试和维护,同时也可以减小内存开销。
swap5中虽然也把变量的地址传到了函数中,但在函数内部并没用修改地址指向的内存块而是把地址在形参上完成交换,swap5函数运行结束,所有的工作都会都是,而main函数中的变量也没有实现交换,这种情况和swap1类似。
具体代码如下:
/*-----try to swap the value of a and b, but it does not work out.*/
/*void swap1(int x,int y)
{
int temp;
temp = x;
x = y;
y = temp;
}*/
/*------using the global variables can implement the swap----*/
/*int a(3),b(5);
//the declarations of a and b in the main function should be commented out.
void swap2()
{
int temp;
temp = a;
a = b;
b = temp;
}*/
/*----using the pointer to pass the address to the swap function*/
/*void swap3(int *px,int *py)
{
int temp;
temp = *px;
*px = *py;
*py = temp;
}*/
/*----using the reference operator(&)-----*/
void swap4(int &x, int &y)
{
int temp;
temp = x;
x = y;
y = temp;
}
/*----meaningless swap---*/
/*void swap5(int *px,int *py)
{
int *p;
p = px;
px = py;
px = p;
}*/
int main(int argc, char* argv[])
{
int a(3),b(5);
printf("before swap:%3d %3d\n",a,b);
swap4(a,b);
printf("after swap:%3d %3d\n",a,b);
return 0;
}
匿名网友:
1.C语言中swap的作用和用法
问:#includevoid main() { void swap(int * p1,int * p2; int a,b...
2.c语言中swap 是什么意思?
答:swap的意思是交换两个变量的值 但是在c语言中没有这样的库函数,需要自己写 写法如下: void swap(int *a,int *b)//表示传入指针,这样就可以修改变量的值{ int t=*a;*a=*b;*b=t;}然后使用方法: #includevoid swap(int *a,int *b){ int t=*a;*a...
3.请问 swap是什么意思?
答:Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。Android是基于Linux的操作系统,所以也可以使用Swap分区来提升系统运行效率。
4.dota 中-swap怎么用?
答:-swap是dota中换人的意思.也就是不可以把手中的英雄和其他玩家互换 一般指令是-swap 1丶-swap 2丶-swap 3如此类推.-swap后跟的数字也玩家的楼数有关 -swap+空格+玩家楼数.这样就申请他那位玩家互换了. -swap的好处有好多.别人熟悉这个英雄.且又...
5.怎么理解Linux系统的Swap交换区
问:怎么理解Linux系统的Swap交换区,看有的资料讲的不是很清楚
6.利率掉期(interest rate swap)是一种什么样的金...
答:利率掉期,就是两个主体之间签订一份协议,约定一方与另一方在规定时期内的一系列时点上按照事先敲定的规则交换一笔借款,本金相同,只不过一方提供浮动利率,另一方提供的则是固定利率。利率的大小也是按事先约定的规则进行,固定利率订约之时...
7.单片机里的SWAP A是什么意思啊?
答:SWAP A 指令的作用是让A中数据的高四位和低四位交换位置,比如之前A=0x3C,执行这指令之后A就变成0xC3了。 AJMP $的执行效果是:跳转到当前指令处,即执行了这跳转指令之后跳转到这条指令的开始,就是我们说的‘死循环’。
8.懂C语言的大虾 求问语句void swap(int*,int*);的作...
问:#include stdio.h void main() { void swap(int*,int*); int x=7,y=11...
9.PHP 定义一个函数swap(&$a, &$b)。
问:PHP 定义一个函数swap(&$a, &$b):交换两个整型参数$a, $b的值;并调用...
10.java 求swap的用法 swap()是一个数组类的方法还...
问:private int partition1(E[] array, int low, int high, Comparator ...
问题推荐