c语言简单题目
设有一以下宏定义#defineWIDTH80#defineLENGTHWIDTH+40则执行赋值语句v=LENGTH*20V=?设有一以下宏定义#defineWIDTH8...
设有一以下宏定义 #define WIDTH 80
#define LENGTH WIDTH+40
则执行赋值语句 v=LENGTH*20 V=?
设有一以下宏定义 #define WIDTH 80
#define LENGTH (WIDTH+40)
则执行赋值语句 v=LENGTH*20 V=?
请问具体有什么区别 怎么算 展开
#define LENGTH WIDTH+40
则执行赋值语句 v=LENGTH*20 V=?
设有一以下宏定义 #define WIDTH 80
#define LENGTH (WIDTH+40)
则执行赋值语句 v=LENGTH*20 V=?
请问具体有什么区别 怎么算 展开
3个回答
展开全部
宏定义只是一个代替
#define LENGTH WIDTH+40 和#define LENGTH (WIDTH+40)的区别在于多了个括号
先看#define LENGTH WIDTH+40
带到v=LENGTH*20 V=? 中
v=WIDTH+40*20=80+40*20=880
再看#define LENGTH (WIDTH+40)
带到v=LENGTH*20 V=? 中
v=(WIDTH+40)*20=(80+40)*20=120*20=2400
关于宏定义,不用多想,他就是一个替身,把原来的数直接带进去就可以,不做任何改变
#define LENGTH WIDTH+40 和#define LENGTH (WIDTH+40)的区别在于多了个括号
先看#define LENGTH WIDTH+40
带到v=LENGTH*20 V=? 中
v=WIDTH+40*20=80+40*20=880
再看#define LENGTH (WIDTH+40)
带到v=LENGTH*20 V=? 中
v=(WIDTH+40)*20=(80+40)*20=120*20=2400
关于宏定义,不用多想,他就是一个替身,把原来的数直接带进去就可以,不做任何改变
展开全部
要看区别直接,替换到语句中就明白了:
1,
设有一以下宏定义 #define WIDTH 80
#define LENGTH WIDTH+40
则执行赋值语句 v=LENGTH*20 V=?
替换得: v=80+40*20 这显示不是你想要结果
2,
设有一以下宏定义 #define WIDTH 80
#define LENGTH (WIDTH+40)
则执行赋值语句 v=LENGTH*20 V=?
替换得: v= (80+40)*20
所以一看就明白结果是不一样的。
1,
设有一以下宏定义 #define WIDTH 80
#define LENGTH WIDTH+40
则执行赋值语句 v=LENGTH*20 V=?
替换得: v=80+40*20 这显示不是你想要结果
2,
设有一以下宏定义 #define WIDTH 80
#define LENGTH (WIDTH+40)
则执行赋值语句 v=LENGTH*20 V=?
替换得: v= (80+40)*20
所以一看就明白结果是不一样的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一个v是880,第二个是4800。区别:先弄清楚宏的替换方式,宏的替换是用宏所代替的串直接替换宏名,而不是用宏的计算结果替换宏。例如:你的第一个替换为,v=80+40*20,第二个替换为,v=(80+40)*20。lz好好捉摸下,希望能帮到你。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询