如何在C中定义多行宏定义?

落爺英雄遲暮 提交于 2019-11-29 05:44:08

请参阅下面的示例,其中我将交换两个变量的值。 do-while(0)结构很不错

#include <stdio.h> 
  
#define swap(x,y,T) do { \
    T temp = (*x);\
    (*x) = (*y); \
    (*y) = temp; \
} while (0)
 
 
int main(void) 
{ 
  int a = 5;
  int b = 9;
  
  printf("Value of a and b before swaping\n");
  printf("a = %d\n",a);
  printf("b = %d\n",b);
  
  //Swap the number
  swap(&a,&b,int);
  
  
  printf("\n\nValue of a and b After swaping\n");
  printf("a = %d\n",a);
  printf("b = %d\n",b);
  
    return 0; 
}

c中çcå®

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!