Kahe muutuja vahetamine ilma muutujata
![](http://img.brin-designs.com/img/games/263/swapping-two-variables-without-using-temp-variable.png)
Näitude kasutamine
# sisaldab tühimuutusi (int *, int *); int main () {int a = 2, b = 5; printf ("Enne: a =% d, b =% d", a, b); muutus (& a, & b); printf ("Pärast: a =% d, b =% d", a, b); tagastamine 0; } tühine muutus (int * a, int * b) {* a + = * b; * b = * a- * b; * a = * a- * b; }
Tulemused
Enne: a = 2, b = 5
Pärast: a = 5, b = 2
Makro kasutamine
#include #define SWAP (x, y) x ^ = y, y ^ = x, x ^ = y int main () {int a = 2, b = 5; printf ("Enne: a =% d, b =% d", a, b); SWAP (a, b); printf ("Pärast: a =% d, b =% d", a, b); tagastamine 0; }
Tulemused
Enne: a = 2, b = 5
Pärast: a = 5, b = 2
Pange tähele, et:
Makro või muutujate nime võib muuta teie mugavuse huvides.