請教各位C語言問題

2022-10-06 21:35:04 字數 895 閱讀 6186

1樓:匿名使用者

首先提醒一下你的#define寫錯啦

正題你定義的是#define add(x) (x)+(x)而不是你看看這有啥區別啊 就是add和(x)中間間開啦

你的是定義add(x)整體是(x)+(x)所以d=add(a+b)*c;

就是((a+b)+(a+b))*c就是80啦定義#define add (x) (x)+(x) 就是你要的結果哈

2樓:匿名使用者

你用的是巨集,而不是函式。所以它進行的是字元代換而不是運算。a+b的確會被執行,所以你是在執行d=add(10)*7; ,但這裡的問題是根據你的定義add(10)被換成了(10)+(10),所以整個式子變成了d=(10)+(10)*7=10+70=80。

而且你那明明就不是add而是double,仔細檢查一下你要執行什麼吧。

3樓:孟儂

因為#define定義的是字元常量,定義好了以後值就是不可以改變的啊!又因為d=add(a+b)*c;我除錯出來也是它啊!

c裡面用巨集解決add 之類的處理是可以的

4樓:毓山蘭

打錯了吧,應是 #define

遵循先替換再計算

(4+6)+(4+6)*7=80

5樓:

d=add(a+b)*c=(a+b)+(a+b)*c=80

6樓:匿名使用者

x用a+b代替,d=add(a+b)*c=(4+6)+(4+6)*7=80.

7樓:小飛俠飛得高

add(a+b)即add(4+6) 就是(10)+(10) d=add(a+b)*c 即d=(10)+(10)*c即d=10+10*7=80

各位大蝦,c語言問題,請教C語言的問題

1,窗體設計的話,你最好用mfc,你可以自己去查一下。是微軟的乙個框架。生成乙個窗體很複雜,有許多。但是也有一些現成的函式給你用。2,指標有很大的用處,他可以讓你直接操作記憶體,這一點的用處,當你編寫一些靠硬體的程式時,你就深有體會了。還有就是對陣列字串的操作,有了指標,就更容易,也更精確。函式本身...

幾個簡單的C語言問題 請教C語言的問題

確實是小菜,不過題太多。又沒懸賞。為你默哀一分鐘後離開!是很簡單,但是你這些都不會,你就要多練習,努力一點就回了。都是c語言教材上的例題,建議找本c語言教材翻翻,問題就解決了!直接求程式?建議你還是親自動手寫一下。請教c語言的問題 既然sum power n,k pow n,k sum power ...

C語言初學者請教各位大師

這個數優先順序問題,首先 i 和 j貌似是單目運算子吧,記不清了,反正是最高的那種。首先 i 會在這個表示式結束後,才會產生加1的效果,就是遇到第乙個分號結束後,i 才會加一,所以到執行 p i i 首先執行括號裡的 i 當這個表示式執行完畢,也就是把 p賦值成10後,i 才會加一再加一 變成7 下...