一般在編譯代碼時會有相當多的警告資訊,尤其當我們使用了-wall選項的時候.-wall絕不是像其字面意思一樣打開所有警告.不過它打開的警告也相當多了.對于一些我們已知"無害"但仍然列印出來擠占可憐的控制台空間的警告,我們當然可以将其"屏蔽"掉.
就拿以下代碼來說:
其會生成一個所謂的"三字元組符号"使用的警告,假設這正是我們需要的效果,是以我們可以忽略該警告.我們編譯一下看看先(無論用gcc還是clang):
gcc:
clang:
不過在去掉-wall警告後,可以發現沒有任何警告,一切都安靜了.但這不是我們想要的,因為可能放過一些真正隐含錯誤類的警告.大家可以看到警告提示中寫明了該警告的類型:-wtrigraphs.我們隻要加上在w後面加上no即可屏蔽該警告,不過要放在wall選項後面,如果放在前面,仍然會有警告哦.編譯器應該是以最後一個"有效"選項為準呀!