[問題] 關於一個 return 的問題

看板C_and_CPP (C/C++)作者 (allstar)時間16年前 (2009/04/26 21:08), 編輯推噓3(305)
留言8則, 3人參與, 最新討論串1/1
程式如下 void a() { } long b() { return (a(), 0L); } int main() { long c = b(); return 0; } 想請問,c 為什麼等於 0? 完全看不懂 b() return 了什麼東西給 c ... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.170.2.121

04/26 21:26, , 1F
因為 `operator ,` 回傳 0L ( office lady ? )
04/26 21:26, 1F

04/26 21:26, , 2F
另外 void a() 是不會回傳的
04/26 21:26, 2F

04/26 21:37, , 3F
請問'operator ,'的行為要去哪裡找呢?還是有點不懂 ...
04/26 21:37, 3F

04/26 21:43, , 4F
找到了 ... 終於瞭解囉,感謝您
04/26 21:43, 4F

04/27 00:01, , 5F
請問2F S大..a() 因為是(Null) 是不是也等於什麼也沒做?
04/27 00:01, 5F

04/27 00:01, , 6F
即便他是int a()
04/27 00:01, 6F

04/27 00:12, , 7F
的確是什麼也沒做 編譯器看到他是空的函式 也會把他去掉
04/27 00:12, 7F

04/27 00:13, , 8F
但如果函式取得a的return value是有效的 那麼就不會去掉
04/27 00:13, 8F
文章代碼(AID): #19z5o_Wk (C_and_CPP)
文章代碼(AID): #19z5o_Wk (C_and_CPP)