#include <stdio.h>
int gd_cnt = 0;
#define prin_id() do{ \
static int i = -1; \
if(-1 == i) i = gd_cnt++;\
printf("%s@L%d %d\n", __FILE__, __LINE__, i); \
}while(0)
int main()
{
prin_id();
prin_id();
return 0;
}
这个有什么用呢?这里每个宏成为可以动态控制实体!