猿问

求助大神,下面这个代码有一小段不懂,求大神帮忙解释一下

/*这是一个函数式宏,要求把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
浏览 1042回答 1
1回答
随时随地看视频慕课网APP
我要回答