作者PaeSooJi (裴秀智)
看板Examination
標題[考題] 102普考/計算機概論/C語言
時間Fri Apr 18 11:26:43 2014
考題:
http://ppt.cc/Ji~W
想法:因為有前置處理器 #define
所以先處理前兩行
#define PLUS(a,b) a-b ==> PLUS(m1+m2,m1-m2) = 2 m2
#define MINUS(a,b) a+b ==> MINUS(m2-m1,m2+m1) = 2 m2
所以ml = 2 m2 * 2 m2 = 36
為何答案是-3呢??
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.27.228.140
※ 文章網址: http://www.ptt.cc/bbs/Examination/M.1397791605.A.C28.html
→ silentlich:5+3-5-3*3-5+3+5=-3 04/18 11:47
→ silentlich:define只是單純的字串替換,你不能先算結果 04/18 11:48
推 okstephen1:同樓上 這就是巨集的壞處,以及括號重要 04/18 12:27
推 lingpxs:這不是壞處 相對的這才是跟函數不同之處 04/18 22:50