1
給定一個操作,如int myNum = 5 + (5 * 9)
或任何其他數學運算,該語句的哪些部分(如果有的話)由編譯器執行?哪些是在運行時執行的?顯然,不斷變化的變量在編譯時不能簡化,但某些操作可能會是這樣。編譯器是否甚至在意做任何這樣的簡化(例如製作上述語句int myNum = 50;
)?在負載,速度或任何其他客觀測量方面,這甚至是重要的嗎?編譯器執行哪些算術操作(如果有的話)?
細節是關鍵,請儘可能詳細地闡述你的想法。
我的意思是這適用於任何算術操作。
這將取決於編譯器 - 是否有你想到的特定的一個? – tpg2114
LLVM我熟悉的一個。 – zachjs
@zsnow:然後您可以在LLVM在線演示中輕鬆檢查自己:http://llvm.org/demo/index.cgi –