C语言:已知有宏定义#define M 3+2 请问表达式3*M*3的值是

C语言:已知有宏定义#define M 3+2 请问表达式3*M*3的值是
A.45 B.27 C.28 D.15
为什么是15 不是45
其他人气:283 ℃时间:2019-10-19 12:40:30
优质解答
因为编译时遇到宏只是展开,在没有加括号的情况下,3*M*3 展开为 3*3+2*3,所以是15.
一般定义宏都强调注意这点,要加括号
#define M (3+2)
这样就能得到45了.
我来回答
类似推荐
请使用1024x768 IE6.0或更高版本浏览器浏览本站点,以保证最佳阅读效果。本页提供作业小助手,一起搜作业以及作业好帮手最新版!
版权所有 CopyRight © 2012-2024 作业小助手 All Rights Reserved. 手机版