不允许创建临时变量,交换两个变量的内容
2016-05-05 09:51
253 查看
//不允许创建临时变量,交换两个变量的内容 #include<stdio.h> #include<stdlib.h> void my_swap(int *a, int *b) { *a = *a + *b; *b = *a - *b; *a = *a - *b; } int main() { int a = 10; int b = 20; my_swap(&a, &b); printf("%d %d", a, b); system("pause"); return 0; }
方法二:
#include<stdio.h> #include<stdlib.h> int main() { int a = 10; int b = 20; a = a^b; //ex: 2 3-> 10 和11 a=a^b->a=01 b = a^b; //b=a^b ->b=10 ->2 a = a^b; //a=a^b ->a=11 ->3 printf("a=%d b=%d\n", a, b); system("pause"); return 0; }
相关文章推荐
- Javaweb学习之JSP基础
- SQL Server中row_number的用法
- iOS应用发布中的一些细节
- Django笔记:2.数据库的建立
- 动手写一个快速集成网易新闻,腾讯视频,头条首页的ScrollPageView,显示滚动视图
- osg中漫游器的原理(一)
- JavaScript-----判断Caps Lock是否开启
- 125. Valid Palindrome
- Win7系统总是弹出"微软设备健康助手"窗口的故障原因及解决方法
- Java中的基础----编程规则,开发原则,面向对象设计原则、面向对象的特征
- 弹出框window.confirm()方法
- 《VR入门系列教程》之7---DK2和Crescent Bay
- 如何解决导入别人项目加载Maven库时,出现摇篮同步失败的错误?
- C++作业5
- 【深入理解JVM】:Java内存区域
- c#访问修饰符
- 大数据-java基础-5day
- 专题三 第十题
- 2-Sum问题
- C++上机作业5