1. 程式人生 > >C語言,交換兩變數數值,而不引入第三個變數

C語言,交換兩變數數值,而不引入第三個變數

菜鳥教程上看見的,真神奇,不過那個異或符號不知道怎麼打出來


#include<stdio.h>

int main( )
{
    unsigned int a=60;         //0011 1100
    unsigned int b=13;         //0000 1101
    printf("a=%d,b=%d",a,b);   //輸出a,b的值
    printf("\n");
    a=a^b;                     //a=a^b=0011 0001
    b=a^b;                     //b=a^b=0011 1100
    a=a^b;                     //a=a^b=0000 1101
    printf("a=%d,b=%d",a,b);   //輸出a,b的值
}

結果:

a=60,b=13;
a=13,b=60;