如果是负数,需要将整个负数加括号如果是表达式,需要整个表达式要加括号 下面的代码都是limits.h头文件中的相关的宏定义 /* Minimum and maximum values a `signed short int' can hold. */ # define SHRT_MIN (-32768) # define SHRT_MAX 32767 可以看到负数要加括号,正数不需要加括号 我暂时没有想到怎么...
宏定义的名称,是C语言标识符的一种,和函数名,变量名的命名规则是一样的,只允许使用数字,字母,下划线,且不能以数字开头。所以宏名是不可以有括号和分号的。另外,在C语言编程中,一般约定宏名用大写字母加下划线组成,而避免使用小写字母。这一条并非是C语言规范强制要求,而是编程时的一种习惯。
define DI_INPUT_NUM (11+2)int a = DI_INPUT_NUM * 3 那么 a =(11+2)*3 = 13*3=39 上面2中情况可以看到第二种才是宏定义的本意。所以习惯性会加个括号,其实空定义不管是数字或者表达式,都必须加括号,这是编程的很好习惯。如果因为上面这些没有加括号情况导致问题,在型项目中这类...
括号中的10是十进制 宏定义只是简单的字符串替换,并不带计算过程 若定义 #define s(x) x*x 执行 s(1+2)结果为5 即 1+2*1+2=5 要想计算过程为(1+2)*(1+2) 宏定义应为 define s(x) (x)*(x)