値の交換
変数aとbがあったとき、この2つの値を交換したいときがあると思います。
そういう時はswap()関数を使います。<algorithm>ヘッダをインクルードすると使えるので
覚えておきましょう。
例)
そういう時はswap()関数を使います。<algorithm>ヘッダをインクルードすると使えるので
覚えておきましょう。
例)
#include <algorithm>
using namespace std;
int main(){
int a=3, b=5;
cout << "a" << a << " b:" << b << endl;
swap( a , b );
cout << "a" << a << " b:" << b << endl;
}
しかし、自分でswap関数を作りたい人もいるかもしれません。
例えば次のようにすると値を交換できる関数が作れます。
例えば次のようにすると値を交換できる関数が作れます。
void swap(int a , int b){
int t=a;
a = b;
b = t;
}
値を交換するときは次の方法ではできません
a = b; b = a;
初心者がよくやる間違いですので気を付けましょう。
ほかにもXOR(演算記号は^)を使った方法があります。
swap(int a,int b){
a ^= b;
b ^= a;
a ^= b;
}
この方法だと余分な変数tを使わずに交換できますが、aとbが同一の変数の場合にうまくいかないので注意が必要です。
...