相关疑难解决方法(0)

如果忽略返回值,如何提出警告?

我想看看我的代码(C++)中忽略函数返回值的所有位置.我怎么能用gcc或静态代码分析工具呢?

代码示例错误:

int f(int z) {
    return z + (z*2) + z/3 + z*z + 23;
}


int main()
{
  int i = 7;
  f(i); ///// <<----- here I disregard the return value

  return 1;
}
Run Code Online (Sandbox Code Playgroud)

请注意:

  • 它应该工作,即使函数及其使用在不同的文件中
  • 免费静态检查工具

c c++ gcc static-analysis

53
推荐指数
4
解决办法
1万
查看次数

MSVC相当于__attribute __((warn_unused_result))?

我发现__attribute__ ((warn_unused_result))作为一种鼓励开发人员不要忽略函数返回的错误代码的方法非常有用,但是我需要将它与MSVC以及gcc和gcc兼容的编译器(如ICC)一起使用.Microsoft Visual Studio C/C++编译器是否具有等效机制?(到目前为止,我已经尝试过没有运气的MSDN.)

c c++ gcc gcc-warning visual-c++

23
推荐指数
3
解决办法
8492
查看次数

标签 统计

c ×2

c++ ×2

gcc ×2

gcc-warning ×1

static-analysis ×1

visual-c++ ×1