整數除法-1/5應該返回什麼?我完全被這種行爲所困惑。我認爲它應該是0,但python和ruby返回-1。整數除負數
爲什麼不同的語言在這裏行爲不同?請有人解釋。謝謝。
| Language | Code | Result |
|-----------+----------------+--------|
| ruby | -1/5 | -1 |
| python | -1/5 | -1 |
| c | -1/5 | 0 |
| clojure | (int (/ -1 5)) | 0 |
| emacslisp | (/ -1 5) | 0 |
| bash | expr -1/5 | 0 |
是什麼問題?你不知道嗎?如果你想知道它的任何語言,試試吧? – usethedeathstar
對不起,我的意思是-1而不是1.我不知道答案,我感到完全困惑。 – ivs
沒有答案。 「整數除法」並不是一個明確定義的概念,每種語言的規範都可以選擇floor或截斷爲0作爲操作的定義結果。 – geoffspear