CodeQL 文档

调用函数时,一个或多个参数类型不兼容

ID: cpp/mistyped-function-arguments
Kind: problem
Security severity: 
Severity: warning
Precision: medium
Tags:
   - correctness
   - maintainability
Query suites:
   - cpp-security-and-quality.qls

点击查看 CodeQL 代码库中的查询

调用函数时,至少有一个参数的类型与被调用函数相应参数的类型不兼容。这可能导致被调用函数的行为不可预测。

这可能表明调用了错误的函数,或者调用函数的签名(参数列表和参数类型)未被作者所知。

建议

使用正确的参数类型调用函数。在某些情况下,只需将参数显式强制转换为所需的(参数)类型即可。

示例

void three_arguments(int x, int y, int z);

void calls() {
	int three = 3;
	three_arguments(1, 2, three); // GOOD
	three_arguments(1, 2, &three); // BAD
}

参考

  • ©GitHub, Inc.
  • 条款
  • 隐私