C C 編譯器 gcc 生成錯誤資訊

2021-08-24 23:46:32 字數 657 閱讀 2221

-pedantic

-pedantic 能夠發現一些不符合 ansi/iso c標準的**,但不是全部。只有 ansi/iso c語言標準中要求進行編譯器診斷的那些情況,才會被gcc發現並提出警告。

> gcc -pedantic test.c -o test
-wall

除了 -pedantic 之外,gcc還有一些編譯選項也能夠產生有用的警告資訊。

這些選項大多以 -w 開頭,其中最有價值的當數 -wall 了,使用它能夠使gcc產生盡可能多的警告資訊。

> gcc -wall test.c -o test
-werror

gcc給出的警告資訊雖然從嚴格意義上說不能算作錯誤,但卻很可能成為錯誤的棲身之所。

乙個優秀的linux程式設計師應該盡量避免產生警告資訊,使自己的**始終保持標準、健壯的特性。

所以將警告資訊當成編碼錯誤來對待,是一種值得讚揚的行為!

在編譯程式時帶上 -werror 選項,那麼gcc會在所有產生警告的地方停止編譯,迫使程式設計師對自己的**進行修改。

> gcc -werror test.c -o test
(類似的介紹,網上也有很多,我也只是照搬過來,碼下來方便自己查閱,emmmmm)

C 編譯器錯誤資訊的Trick

http www.dinkumware.com exam default.aspx 獲得我們感興趣的資訊 比如結構對齊資訊,複雜物件型別等等 1 輸出巨集的內容 基本的思想就是利用c 中string literal不能作為模版引數的特性。通常編譯器會將string literal的內容也一併輸出。下...

編譯器錯誤資訊 CS0016

編譯器錯誤資訊 cs0016 未能寫入輸出檔案 c windows microsoft.net framework v2.0.50727 temporary asp.net files 安裝完 framework 3.0 之後,出現 不能訪問 c windows microsoft.net fram...

編譯器錯誤資訊 CS0016

編譯器錯誤資訊 cs0016 未能寫入輸出檔案 d windows microsoft.net framework v1.1.4322 temporary asp.net files 5177u d087da43 c12930d8 9ze28k 8.dll 拒絕訪問。網上搜了一下,很多人碰到這個問題...