`
searchje
  • 浏览: 3429 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

C语言swap不申请额外空间交换二个值

阅读更多

#include <stdio.h> 
 
void swap(int *x, int *y) 

    *x ^= *y; 
    *y ^= *x; 
    *x ^= *y; 

 
void swap2(int *x, int *y) 

    *x = *x + *y; 
    *y = *x - *y; 
    *x = *x - *y; 

 
void swap3(int *x, int *y) 

    *x = *x - *y; 
    *y = *x + *y; 
    *x = *y - *x; 

 
 
int main() 

    int a, b; 
    a = 100 , b = 200
    printf("a:%d\tb:%d\n", a, b); 
 
    swap(&a, &b); 
    printf("a:%d\tb:%d\n", a, b); 
 
    swap2(&a, &b); 
    printf("a:%d\tb:%d\n", a, b); 
 
    swap3(&a, &b); 
    printf("a:%d\tb:%d\n", a, b); 
 
    return 0

 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics