不用中间变量来实现两个变量的值的交换

#include <stdio.h>

static inline void swap(int* a, int* b)
{
        *a = *a ^ *b;
        *b = *a ^ *b;
        *a = *a ^ *b;
}

int main(int argc, char* argv[])
{
        int a = 1;
        int b = 2;

        swap(&a, &b);

        printf("a = %d\n", a);
        printf("b = %d\n", b);

        return 0;
}
发布了23 篇原创文章 · 获赞 15 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/TanJiaLiang_/article/details/80369293