当前位置: 代码迷 >> 计算机图书 >> 带参宏定义的思忖
  详细解决方案

带参宏定义的思忖

热度:127   发布时间:2016-04-29 11:23:51.0
带参宏定义的思考

带有参数的宏定义:

宏定义是一种替换,所以返回的通常是带有运算符表达式.不能返回语句.

通常用的一些运算符:三目运算符(代替if语句)...&&...||

特殊建议:为了保证准确性,在()中放入变量

下面是一些宏定义的例子/

1,判断字符是不是10进 值的数字 

#define  DECCHK( c ) ((c) >= '0'&& (c) <='9') 

2,判断字符是不是16进 值的数字 

#define  HEXCHK( c ) ( ((c) >= '0'&& (c) <= '9') ||\ 

                       ((c) >= 'A'' && (c) <= 'F'') ||\ 

((c) >= 'a' && (c) <= 'f') ) 

3,将一个字母转换为大写 

#define  UPCASE( c ) ( ((c) >= 'a' && (c) <= 'z') ? ((c) - 0x20) : (c) ) 

4.取三个数的最大值:(c)>((a)>(b)?(a):(b))?(c):((a)>(b)?(a):(b))

  相关解决方案