看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《windows2k (程式宅 <囧>)》之銘言:
windows2k: 我的問題是如果可能被最佳化掉, 那為什麼大家都這麼做 09/13 07:29
windows2k: 還是大家約定俗成完全無視? 09/13 07:29
我的看法是: 1. 會被最佳化的情況很少見. 一般情況下, 你不會產生不能被最佳化的情況. 像網頁提的那種例子, 正常意識到自己在幹嘛的人都會用 volatile 宣告變數 如果變數本身是 volatile, 當然用 memset 有它的風險. 知道風險還去做. 那怪不得別人. 2. 真的要做的話, 寫 memset 的 volatile 版本我相信在一般的編譯器不會有甚麼問題. 像網頁說的那個問題還是著重在對標準的 volatile 行為該怎麼解釋. 我相信宣告變數本身為 volatile 又使用 memset 的 volatile 版本時, 應該不會有甚麼其他問題. (自以為) 3. 如果你真的真的很 care, 那就使用 memset_s 吧, 至少編譯器要保證它是可以用的 XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.29.148 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1410611647.A.721.html