设有宏定义命令:#define SUM 2+3 则表达式5+SUM*5的值为() A)50 B)30 C)22 D)20

问题描述:

设有宏定义命令:#define SUM 2+3 则表达式5+SUM*5的值为() A)50 B)30 C)22 D)20

22
因为define只把SUM当作一个名称看待
所以结果为5+2+3*5=22为什么只要3*5而不是(2+3)*5呢?这是define的一个缺陷,所以通常用const代替