Bytte to variabler uden at bruge en temp variabel
Brug af pegepinde
#include void change (int *, int *); int main () {int a = 2, b = 5; printf ("Før: a =% d, b =% d \ n", a, b); ændring (& a & b); printf ("Efter: a =% d, b =% d \ n", a, b); returnere 0; } tomrumsændring (int * a, int * b) {* a + = * b; * b = * a- * b; * a = * a- * b; }
Resultater
Før: a = 2, b = 5
Efter: a = 5, b = 2
Gør brug af en makro
#include #define SWAP (x, y) x ^ = y, y ^ = x, x ^ = y int main () {int a = 2, b = 5; printf ("Før: a =% d, b =% d \ n", a, b); SWAP (a, b); printf ("Efter: a =% d, b =% d \ n", a, b); returnere 0; }
Resultater
Før: a = 2, b = 5
Efter: a = 5, b = 2
Noter det:
Navnet på makroen eller variablerne kan ændres til din bekvemmelighed.