C 常用編譯警告型別和解決方法

2021-10-21 02:00:51 字數 854 閱讀 2249

1、未使用的函式引數

unused function parameter
檢查函式的引數在函式體內是否被使用,如果引數不需要,直接刪除引數名。

2、未使用的變數

variable defined but never used
檢查某個變數是否需要被引用,若不需要則可以通過插入乙個變數本身的求值表示式解決。

void

fun(

)

3、變數使用前未初始化

variable may be used without being initialized
各種變數在定義之後,都必須初始化,在進行後續的賦值等相關操作

4、遺漏return語句

missing return
如在 switch語句中,沒有default語句。應加上執行assert(false)的dedault情況。即在case後加上

default

assert(!

"string");

//括號裡面的結果為fault

return-1

;

5、有符號數、無符號數不匹配

signed

/unsigned missmatch

在對符號不同的整數進行比較和賦值會出現警告,此時顯式強制型別轉換消除警告。

C語言 警告提示及解決方法

include int main stu1 給結構體成員賦值 stu1.name tom stu1.num 12 stu1.age 18 stu1.group a stu1.score 136.5 讀取結構體成員的值 printf s的學號是 d,年齡是 d,在 c組,今年的成績是 1f!n stu...

QT編譯執行報錯資訊和解決方法

本文記錄日常工作中使用qt creator開發時遇到的報錯,以及解決辦法,因同乙個報錯可能的原因很多,這裡只是部分解決思路。報錯 domelem node.toelement node為形參引用,報錯大意是對臨時變數取位址,返回後臨時變數消失導致位址失效,使用非const引用引用返回的臨時變數位址是...

137 Handler警告解決方法

用handler 的時候 經常出現乙個警告 this handler class should be static or leaks might occur 這個handler 類應該被設成 static,否則有可能記憶體洩漏 原因 首先我們複習一下handler機制 訊息傳送到主線程,新增到訊息佇...