#include <stdio.h>
void fun(char a[]){
a[0]^=a[1]^=a[0]^=a[1];
}
int main(int argc, char **argv){
char b[10];
b[0]='h';
b[1]='j';
fun(b);
printf("%c",b[0]);
return 0;
}
このコードでは何が問題になりますか。それはb[0]
とb[1]
を交換するが、それは入れ替えられていない。XOR出力予測のスワップ
XORを忘れて一時的に使用してください。読みやすく、信頼性が高く、おそらくより効率的です。 –
おかしなことをやっていないのに、人々が彼らの関数をfun()と呼ぶのは面白いです。 SCNR :-) – glglgl