亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: gcc有辦法對不處理函數(shù)返回值的情況發(fā)出警告嗎? [打印本頁]

作者: hcq0411    時間: 2011-11-03 17:26
標題: gcc有辦法對不處理函數(shù)返回值的情況發(fā)出警告嗎?
因為c不像c++可拋異常,不處理就會abort(),很多同事都忘記判斷函數(shù)返回值,導致一系列問題,調(diào)試時頭都大了。。。

請問各位,gcc是否可以做到?
比如
int sum(int a, int b) { return a+b }
int main()
{
      sum(1, 2);
      return 0;
}
就可以打印出警告來,說sum()函數(shù)的返回值沒有被使用。(至少用一個變量接住吧。)

我試了-Wreturn-type,沒有用。。。
作者: EricFisher    時間: 2011-11-04 17:24
gcc沒有提供這樣的一個通用選項,而是提供了一個屬性,用來指定單個函數(shù)。

warn_unused_result
    The warn_unused_result attribute causes a warning to be emitted if a caller of the function with this attribute does not use its return value. This is useful for functions where not checking the result is either a security problem or always a bug, such as realloc.

  1.               int fn () __attribute__ ((warn_unused_result));
  2.               int foo ()
  3.               {
  4.                 if (fn () < 0) return -1;
  5.                 fn ();
  6.                 return 0;
  7.               }
復制代碼
results in warning on line 5.
作者: tempname2    時間: 2011-11-15 11:36
不知道有沒有通用選項,可以用lint,到時候你就得(void)printf (...)了
作者: 帥絕人寰    時間: 2012-01-13 13:07

int fn () __attribute__ ((warn_unused_result));

或者:

-Wunused-result




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2