首頁 > 後端開發 > C++ > 主體

用於提高程式碼品質和檢測潛在問題的 C/C 最佳編譯器警告設定是什麼?

Susan Sarandon
發布: 2024-11-04 02:06:02
原創
236 人瀏覽過

What are the optimal compiler warning settings for C/C   to enhance code quality and detect potential issues?

C/C 的最佳編譯器警告設定

選擇適當的編譯器警告等級可以透過識別潛在問題來提高程式碼質量。以下是各種編譯器的建議等級:

gcc 和g :

  • '-Wall' 啟動廣泛的警告,包括邏輯優先規則和類型檢查的警告.
  • 「-Werror」將警告提升為錯誤,儘管它可能需要停用用於記筆記的「#warning」巨集。

Sun CC:

  • 「-xarch=v9」啟用更嚴格的警告級別,解決可移植性和效率問題。

aCC (HPUX):

  • '-A' 啟動對緩衝區溢位、空指標取消引用和未定義行為的額外檢查。

Visual Studio:

  • 「4 級」(「/W4」)提供全面的警告,包括有關未初始化變數和未使用代碼的資訊。

英特爾:

  • '-Wall' 會引發類似gcc '-Wall' 的警告,以及對記憶體安全和可移植性的額外檢查。

Extra-Paranoid C 標誌:

對於高度關鍵的代碼,可以使用一套全面的警告標誌:

-g -O -Wall -Weffc++ -pedantic  \
-pedantic-errors -Wextra -Waggregate-return -Wcast-align \
-Wcast-qual  -Wchar-subscripts  -Wcomment -Wconversion \
-Wdisabled-optimization \
-Werror -Wfloat-equal  -Wformat  -Wformat=2 \
-Wformat-nonliteral -Wformat-security  \
-Wformat-y2k \
-Wimplicit  -Wimport  -Winit-self  -Winline \
-Winvalid-pch   \
-Wunsafe-loop-optimizations  -Wlong-long -Wmissing-braces \
-Wmissing-field-initializers -Wmissing-format-attribute   \
-Wmissing-include-dirs -Wmissing-noreturn \
-Wpacked  -Wpadded -Wparentheses  -Wpointer-arith \
-Wredundant-decls -Wreturn-type \
-Wsequence-point  -Wshadow -Wsign-compare  -Wstack-protector \
-Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch  -Wswitch-default \
-Wswitch-enum -Wtrigraphs  -Wuninitialized \
-Wunknown-pragmas  -Wunreachable-code -Wunused \
-Wunused-function  -Wunused-label  -Wunused-parameter \
-Wunused-value  -Wunused-variable  -Wvariadic-macros \
-Wvolatile-register-var  -Wwrite-strings
登入後複製

根據專案要求和第三方函式庫相容性自訂這些設定。

以上是用於提高程式碼品質和檢測潛在問題的 C/C 最佳編譯器警告設定是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板