对于以下宏定义: #define M 1+2 #define N 2*M+1执行语句“x=N;”之后,x的值是 。
举一反三
- 对于以下宏定义: #define M(x) x*x #define N(x, y) M(x)+M(y)执行语句z=N(2, 2+3);后,z的值是 。
- 有宏定义#define M(x)x*x*2;则a=M(2+3)的值() A: 2 B: 3 C: 11 D: 14
- 定义一个带参的宏名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(x,y) (x*y)int a;a=M(1+2,3);则执行下列语句后,a的值为( )。 A: 7 B: 5 C: 9
- 设有以下宏定义: #define M 4 #define T(t)((M+1)*t) ,则执行语句:y=2*(M+T(4+1));后,y的值为(). A: 出错 B: 50 C: 28 D: 58