看板 Soft_Job 關於我們 聯絡資訊
#include <cstdlib> #include <iostream> using namespace std; #define fun(x) x*x*x int main(int argc, char *argv[]) { int a = 2; int b = fun(++a); cout<<a<<" " << b<<endl; system("PAUSE"); return EXIT_SUCCESS; } 小弟不才, 答案出乎我意料, 可以請高手指點嗎?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.161.193.64
bobju:++a*++a*++a ...這 08/03 00:43
KiroKu:有點老梗 就是 ++a*++a*++a 依順位執行 08/03 00:44
Dav12345:答案是 5 80 08/03 00:45
bobju:會不會因編譯器的不同而有不同的答案? 08/03 00:46
azureblaze:答案是undefined behavior 08/03 00:51
coolcomm:C 怎麼什麼都 undefine ... 08/03 00:52
azureblaze:undefined才有最佳化的空間 08/03 00:54
azureblaze:而且這麼常出現是因為很多題目自以為刁鑽 08/03 00:55
Goodwater:誰沒事這樣寫code給他雨八 08/03 01:07
rebaudiana: 令刀 08/03 01:09
haloarch:寫得 KISS 加 /* 才正辦,炫技的無解。 08/03 01:19
VVll:effective c++中就建議少用macro 08/03 01:32
AnyaAlstreim:PO 錯板? 08/03 01:46
forthewill:網路就能查到了吧.. 08/03 03:14
realmeat:a+++a 08/03 06:59
realmeat:marco使用的技巧就是一定要包起來.. 08/03 07:00
eva19452002:本板有開放作業文嗎? 08/03 10:46
opthr1215:我用vs2010答案是5 125耶? 08/03 11:20
opthr1215:@Dav12345 08/03 11:20
robler:很無聊的題目 根本找不到人會這樣寫 08/03 11:40
shuckmol:會考這題的公司 表示連出題目都不會 這是給剛看完書的人 08/03 14:22
shuckmol:寫的 公司要這樣的人幹嘛? 08/03 14:22
lulala453:undefined 沒錯,Google "Sequence point C" 08/03 14:48
kaibaseto:是哪一年特考的題目? 08/03 14:55
ypwalter:compiler不同有不同答案吧... 08/03 19:08
littlethe:我算錯了>"< 08/03 22:26
eva19452002:不同的compiler有不同的答案,這樣c還有可攜性嗎? 08/04 00:03
Bencrie:為什麼沒有?undefined behavior 又不是避不掉 XD 08/04 00:21
azureblaze:在undefined之前還有implementation-defined 08/04 00:35
azureblaze:c的可攜性本來就是要自己或library注意的 08/04 00:35
littlethe:推樓上,所謂可攜性只是指語法相通,但底層會不同 08/04 01:39
appleway:以c89來說,就連CPU不同連int大小都會不同了。 08/04 06:15
Raymond0710:C_and_CPP 置底文 13戒之9 08/04 19:07
snaketsai:先說解答:Undefined。++運算最高優先,但運算序無要求 08/04 20:51
snaketsai:1形態大小NA1有補header,size critical請用exact type 08/04 20:54
haloarch:原PO都扣的不 KISS 了,還在忙啥?大概都沒看過 K&K. 寫 08/06 22:00
haloarch:的 c Bible。其實書名只是 c 語言,也沒看過為何有 c 的 08/06 22:03
haloarch:哲思。看看最大的大佬比爾蓋茨的書 如何撰寫程式 Basic, 08/06 22:05
haloarch:他老大要求寫得 KISS!而且不忘懷 basic 語言,basic 不 08/06 22:07
haloarch:僅僅 basic,蓋茨的堅持令你現在還在扣 VB;不是嗎? 08/06 22:09
haloarch:看到這個程式兩個K大都會從地下跳出來。:什麽都沒錯,錯 08/06 22:11
haloarch:在中央處理器的佇列 暫存 堆疊怎麼承受!不要整他就對了. 08/06 22:15