การแลกเปลี่ยนสองตัวแปรโดยไม่ใช้ตัวแปร temp

การใช้พอยน์เตอร์

 #include การเปลี่ยนแปลงเป็นโมฆะ (int *, int *); int main () {int a = 2, b = 5; printf ("ก่อนหน้า: a =% d, b =% d \ n", a, b); การเปลี่ยนแปลง (& A & B); printf ("หลังจาก: a =% d, b =% d \ n", a, b); กลับ 0 } การเปลี่ยนแปลงเป็นโมฆะ (int * a, int * b) {* a + = * b; * b = * a- * b; * a = * a- * b; } 

ผล

ก่อนหน้า: a = 2, b = 5

หลังจาก: a = 5, b = 2

การใช้ประโยชน์จากแมโคร

 #include #define SWAP (x, y) x ^ = y, y ^ = x, x ^ = y int main () {int a = 2, b = 5; printf ("ก่อนหน้า: a =% d, b =% d \ n", a, b); SWAP (A, B); printf ("หลังจาก: a =% d, b =% d \ n", a, b); กลับ 0 } 

ผล

ก่อนหน้า: a = 2, b = 5

หลังจาก: a = 5, b = 2

โปรดทราบว่า:

ชื่อของแมโครหรือตัวแปรอาจถูกเปลี่ยนเพื่อความสะดวกของคุณ

บทความก่อนหน้านี้ บทความถัดไป

เคล็ดลับยอดนิยม