【规则分析】C/C++返回值处理检查 #1059
xiohuang9
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
项目需求
在C/C++中,如果函数有返回值,但在调用它时没有处理返回值,可能会导致错误处理不足、未定义行为、资源泄漏和性能损失等问题。因此,始终检查返回值、错误码和异常是一种良好的编程实践,可以帮助我们及时发现潜在的错误和问题,并采取适当的处理措施来确保程序的正确性和稳定性。
基于以上编程实践,需要实现满足的代码分析规则:
代码案例:
![4](https://private-user-images.githubusercontent.com/160583399/323150096-d376f3fb-dd5c-4c3a-9ed7-f804660e03fc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk2MDcxMjAsIm5iZiI6MTcxOTYwNjgyMCwicGF0aCI6Ii8xNjA1ODMzOTkvMzIzMTUwMDk2LWQzNzZmM2ZiLWRkNWMtNGMzYS05ZWQ3LWY4MDQ2NjBlMDNmYy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjI4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYyOFQyMDMzNDBaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT03MTYxNGM5OWU3NmY3NWZhYzI0N2Q2NDg4ODNlNDUzMzNlNDI5MzdhMzg5MzkzZjBiM2EyZjFmZTZlNWU0MjMwJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.bGXy4sOIKXR1I3pPDdZ47qgyzt68xgaXLatVj4_jLrg)
规则设计
TCA独立工具 TCA-Armory-Q1 的 Unused_Return 支持该场景,支持检测一个函数返回值没有被使用的情况。
使用说明:
![11](https://private-user-images.githubusercontent.com/160583399/323150637-cffa53cd-a474-4ab4-9834-2f6ced85ba64.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk2MDcxMjAsIm5iZiI6MTcxOTYwNjgyMCwicGF0aCI6Ii8xNjA1ODMzOTkvMzIzMTUwNjM3LWNmZmE1M2NkLWE0NzQtNGFiNC05ODM0LTJmNmNlZDg1YmE2NC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjI4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYyOFQyMDMzNDBaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xODE0N2Q2MzZmMDM1ZjYzNjMyMWQxMzg2YTM2ODEzZWQ0NWRlYzBkMzcyZDUwYzc2OGI5MGFkOTg3OTJjNjkxJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.jC6JWV7odQzH_6xn-yvnsLp1z_E0V-YRJQ-ifipjc9A)
![12](https://private-user-images.githubusercontent.com/160583399/323150654-fb917028-5054-4103-b1af-85502b008c83.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk2MDcxMjAsIm5iZiI6MTcxOTYwNjgyMCwicGF0aCI6Ii8xNjA1ODMzOTkvMzIzMTUwNjU0LWZiOTE3MDI4LTUwNTQtNDEwMy1iMWFmLTg1NTAyYjAwOGM4My5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNjI4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDYyOFQyMDMzNDBaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02NTA3NjY1NDcwZWRjMjUwODU2MTM0NjdjYTgwYjA0YzYwZjMxYmVjYjBhNjE5M2JiMzNlY2M1NGE3YTZhYzA1JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.YIorB3ElHK9kOkcRRgsx0tDpM4G3YNjd0j4QESX24J0)
分析方案->规则配置 -> 添加规则 ->搜索规则名UnusedReturn->选择需要添加的规则 ->批量添加规则
联系我们
欢迎访问我们的平台:腾讯云代码分析
使用文档:腾讯云代码分析帮助文档
CI流水线接入腾讯云代码分析:接入指引
我们开源啦:GitHub开源地址
Beta Was this translation helpful? Give feedback.
All reactions