CWARN.PASSBYVALUE.ARG

由值传递的函数参数过大

CWARN.PASSBYVALUE.ARG 检查器可查找其中由值传递的函数参数过大的实例。

漏洞与风险

通过值传递不一定是错误,但是它可由于复制的数据量导致性能损失。

漏洞代码示例

复制
  struct strcture{
    int x[20];
    char y[100];
    int z[20];
  };
  
  void foo(strcture arg) 
  {}

Klocwork 标记了第 7 行,该行中的参数 arg 过大。

相关检查器