C++中間変数tempを使用せずに2つの数の値を交換
3674 ワード
#include
using namespace std;
int main() {
int a = 2, b = 5;
cout << "Swap before, value of a, b:" << endl;
cout << "a: " << a << ", " << "b: " << b << "." << endl;
swap(a, b);
cout << "Swap after, value of a, b:" << endl;
cout << "a: " << a << ", " << "b: " << b << ".";
return 0;
}
// temp
void swap(int &a, int &b) {
a = a + b; // a = 2 + 5 = 7
b = a - b; // b = 7 - 5 = 2
a = a - b; // a = 7 - 2 = 5
}
/*
b = (a+b)-b = a
a = (a+b)-a = b
*/