c语言中swap是个什么函数?swap函数一般是一个程序员自定义函数,是实现两个变量数值的交换 。
1、比如:
int a = 2;
int b =3;
swap(a,b); //一般用到变量数值交换,交换后a=3 b = 2;
2、通过使用临时变量实现交换 。
void swap1(int x,int y)
{
int temp;
temp=x;
x=y;
y=temp;
}
扩展资料
C语言swap函数的使用
#includestdio.h
void swap(int *pa,int *pb)
{
int temp;
temp=*pa,*pa=*pb,*pb=temp;
}
void main()
{
int a=10,b=20;
swap(a,b);//传递的是实参变量a,b的地址
printf("a=%d,b=%d\n",a,b);
}
C语言中的swap是什么意思?swap函数一般是一个程序员自定义函数 。通常是实现两个变量数值的交换 。比如
int a = 2;
int b =3;
swap(a , b); //一般用到变量数值交换 , 交换后a=3 b = 2;
实现的方法多种多样 。比如下面几种写法:
1、通过使用临时变量实现交换 。
void swap1(int x,int y)
{
int temp;
temp=x;
x=y;
y=temp;
}
2、通过临时指针变量实现交换 。
void swap2(int *x,int *y)
{
int *temp;
temp=x;
x=y;
y=temp;
}
3、借助指针加入临时变量来实现交换 。
void swap3(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
c语言中swap 是什么意思?【c语言swap函数 c语言swap函数用法】swap函数一般是一个程序员自定义函数 。通常是实现两个变量数值c语言swap函数的交换 。
1.swap1(x,y);
printf("swap1: x:%d,y:%d\n",x,y);//形参传值,不能交换,实际传过去是拷贝c语言swap函数的一份,没改变主函数中x,y 。
2.swap2(x,y);
printf("swap2: x:%d,y:%d\n",x,y);//不能交换,函数中只是地址交换了下,地址指向的内容没有交换 。
3.swap3(x,y);
printf("swap3: x:%d,y:%d\n",x,y);//能交换,地址指向的内容进行了交换 。
扩展资料
C语言是一门通用计算机编程语言c语言swap函数 , 广泛应用于底层开发 。
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言 。
参考资料C语言_百度百科
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:= =\n",a,b);
swap4(a,b);
printf("after swap:= =\n",a,b);
return 0;
}
关于c语言swap函数和c语言swap函数用法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- what如何营销,营销手段英语
- 汇编与linux命令 linux 汇编
- 数据库mysql使用ssh,数据库mySQL使用命令方式打开指定数据库
- java爬虫课程设计总结,java爬虫毕业设计
- 怎么下载全能动作这款游戏,全能动作玩家卡带
- c语言函数的值传递 c语言 传递函数
- sap镜头的简单介绍
- phpcms关闭注册,php注销用户
- 怎么解决虚拟机键盘的问题,虚拟机虚拟键盘