12/09/10 01:45:19.08
num[k]とnum[i]の数値の交換をするためにビット演算を使ったら、なぜか上手いこと動かない。
どこに原因が有るのか?
int i,j,k,temp;
int *num;
/*numの値の取得と幾つかの処理*/
num[k] ^= num[i];
num[i] ^= num[k];
num[k] ^= num[i];
この部分が
temp=num[k];
num[k]=num[i];
num[i]=temp;
だと普通に動く。
環境は
OS:Linux
コンパイラ:gcc 4.7