有以下宏定义及调用#define HA 2#define HB(a) (HA+1)*a ...x=HA*(HA+HB(2));则以下判断正确的是( )。
A: 宏定义不允许嵌套
B: x的值是6
C: x的值是16
D: 宏调用不允许嵌套
A: 宏定义不允许嵌套
B: x的值是6
C: x的值是16
D: 宏调用不允许嵌套
举一反三
- 有以下宏定义及调用 #define HA 2 #define HB(a) (HA+1)*a ... x=HA*(HA+HB(2)); 则以下判断正确的是
- 定义一个带参的宏名f(x)计算表达式2*x*(x+1)的值,则以下带参宏定义中正确的定义形式是: A: B: define f(x) 2*x*(x+1) C: D: define f(x) (2*(x)*((x)+1)) E: F: define 2*(x)*((x)+1) f(x) G: H: define f 2*x*(x+1)
- 对于以下宏定义: #define M 1+2 #define N 2*M+1执行语句“x=N;”之后,x的值是 。
- 用宏替换计算多项式2*x*x-x+10,正确的宏定义是()。 A: #define calculx(x) (2*(x)*(x)-(x)+10) B: #define calculx (2*(x)*(x)-(x)+10) C: #define calculx(x) 2*x*x-x+10 D: #define calculx 2*x*x-x+10
- HA、HB分别为A、B两点的高程值,则地面两点的高差hAB=()。 A: HA - HB B: HB - HA C: HA +HB D: HB + HA