A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 喧闹的世界 中级黑马   /  2015-3-12 10:31  /  923 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

刚看视频说到a,b值交换的方法,自己试了一下,出了给出的两种还有这么两种方法,和大家分享一下:
1.使用异或语句:
int main(){
        int a = 10;
        int b = 20;
        a ^= b;
        b ^= a;
        a ^= b;
        printf("a = %d,b = %d",a,b);
}


2.使用汇编语言:
#include <stdio.h>

int main(){
        int a = 10;
        int b = 20;
        __asm{
                push a;
                push b;
                pop a;
                pop b;
        }
        printf("a = %d,b = %d",a,b);
}

5 个回复

正序浏览
进来学习了
回复 使用道具 举报
mj教的面试方法
  1. int main()
  2. {
  3. int a = 10;
  4. int b = 5;
  5. b = b - a;
  6. a = a + b;
  7. b = a - b;
  8. }
复制代码
回复 使用道具 举报
汇编语言真心不会,赞一个
回复 使用道具 举报
TRY! 发表于 2015-3-12 18:23
什么?看不懂类

http://blog.csdn.net/stumm/article/details/44014753
回复 使用道具 举报
什么?看不懂类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马