在C语言中,定义两个参数的宏完成参数交换,那么1、如果参数为指定为整型量,如int、long、short、char,可以这样定义:#define swap(a,b) {(a)=(a)^(b);(b)=(a)^(b);(a)=(a)^(b);}这个方法,可以不用借用第三个参数。2、如果参数不是整型量,如float、double等,那么可以借助外部第三个参数,这样定义:#define swap(a,b) {(t)=(a);(a)=(b);(b)=(t);}在实际使用中,t的类型需要与a,b相同,如:float a,b,t;a=1.2;b=2.3;swap(a,b)... |