/*这是一个函数式宏,要求把type型的a,b两值互换*/
#include <stdio.h>
#define swap(type, a, b) do { \ /*就是这个do...while语句不太懂*/
type t; \ /*这里为什么可以有另一个变量t,为什么要这样写啊*/
t = a; \
a = b; \
b = t; \
} while (0);
int main(void)
{
int nx, ny;
puts("please enter two integer");
printf("integer A: ");
scanf("%d", &nx);
printf("integer B: ");
scanf("%d", &ny);
printf("A: %d B: %d\n", nx, ny);
swap(int, nx, ny);
printf("A: %d B: %d\n", nx, ny);
return 0;
}
1 回答
- 1 回答
- 0 关注
- 1041 浏览
添加回答
举报
0/150
提交
取消