pclint之检查多个代码文件和库头文件

如何将PCLint集成到SourceInsight中(针对VxWorks+Tornado开发平台) PC-Lint 是一款C/C++软件代码静态分析工具。 PC-lint在全球拥有广泛的客户群,许多大型的软件研发组织(包括几大通信设备厂商)都把PC-Lint检查作为代码走查的第一道工序。PC-Lint不但能够对程式进行全局分析,识别没有被适当检验的数组下标,报告未被初始化的变量,警告使用空指针连同冗余的代码,还能够有效地提出许多程序在空间利用、运行效率上的改进点。 网上有很多将PCLint集成 阅读详情
参考自:

http://blog.youkuaiyun.com/sunyubo458/article/details/5938851



pclint之检查多个代码文件和库头文件
参考自:
http://blog.youkuaiyun.com/sunyubo458/article/details/5938851

问题一、Lint多个C文件

方法一:

(1)   在LINT软件目录下建立PRJLINT.LNT文件,文件的第一行是使用的LINT配置文件名,从第二行开始,列出想所有要LINT的*.C文件名,一行一个。如果要把结果输出到文件,在前面加上一行 "-os(文件名) "(例如: "-os(c:/lint/result.txt) ")。样例:

YF_Config.lnt

// 以下为自己想要进行Lint的.C文件,
G:/src/tt/tt1.c
G:/src/tt/tt2.c
         …
(2)  在Source Insight中增加一条"PC-LINT PROJECT”命令,所有设置与"PC-LINT"设置相同,除了在"Custom Commands"对话框中 "RUN "编辑框的文字由"C:/LINT/LINT-NT.EXE filename.lnt %f"改为"C:/LINT/LINT-NT.EXE PRJLINT.LINT ",也就是把配置文件名改为PRJLINT.LNT,并去掉未尾的"%f "

方法二:

(1)打开SourceInsight, 选择Options-->Custom Commands-->Add, 输入pclint_prj
(2)在Run中填写: D:/UnxUtils/usr/local/wbin/find.exe %d -name *.c -o -name *.cpp | D:/UnxUtils/usr/local/wbin/xargs D:/PC-Lint/lint-nt -i"D:/UnxUtils/usr/local" -u D:/PC-Lint/std.lnt D:/PC-Lint/env-vc6.lnt

问题二:PCLint检查库头文件

方法:

在std.lnt中加入

-wlib(0)

这个参数是取消对编译器库文件的审查,这个是相当重要的一个参数。如果
你只是想审查自己的代码的话,请加上这个参数。不然,就会对编译器的库函数也
进行审查。



PClint报错分析实战 还记得菜鸟要怎么才能码出高质量的C/C++代码吗? 对,使用工具。今天举一个静态代码分析工具PClint的报错以及排查的例子,来说明下怎么解决报错来提升代码质量。某日,pclint检查报错如下: 这是什么鬼?被重新声明怎么可能呢?因为看下面都是同一个函数,只是参数类型不同: 这怎么可能? 是不是运行环境出的错?因为程序员的问题总是环境的锅的嘛????????! 环境表示不同意这个说法,即使环境同意领导也不同意的,????,对吧!问题总要弄明白的, 奋斗吧,菜鸟,走你。 第一步:确认下环境,确保运行环境正 阅读详情

相关推荐

Linux下通过docker实现Pclint检查

目前所属项目的pclint的CI job依然采用windows节点实现,需要单独配置一台windows机器实现,既不方便管理也不能充分利用资源,所以考虑改造为linux实现。linux下实现pclint主要采用通过wine工具模拟windows来执行的方式,另外,为方便部署,所以考虑用docker进行部署,方法如下: 1,基本环境创建 公司的镜像仓库里有公共的的wine镜像,极...

weixin_42826352的博客 922

PCLint与SourceInsight

搭建PCLint与SourceInsight全套环境  http://blog.youkuaiyun.com/u012329294/article/details/42042083 SourceInsight与PC-LINT集成进行代码静态分析  http://blog.youkuaiyun.com/objects/article/details/1435595

凉风习习的博客 994

软件质量之道:PCLint之一

今天的主题,PCLint,自觉这部分至少可以分为两篇文章,如果要深入讲解,足以涵盖《Effective C++》,《More Effective C++》等书的内容,所以还是只介绍用法,要想知道的更多,那就Google一下吧! 第一部分内容,主要介绍PCLint的功能以及如何安装。第二部分内容则讲解PCLint如何使用(暂时这么计划的,也许会突发奇想出来第三部分第四部分,那就请继续关注吧)。

风马牛 3653

PC-Lint的使用方法(一)

PC-Lint是一款C/C++软件代码静态分析工具,不仅可以检查一般的语法错误,还可以检查潜在的错误,比如数组访问越界、内存泄漏、使用未初始化变量、使用空指针等。在单元测试前使用PC-Lint来检查代码,可以提前发现程序中的潜在的错误,提高代码的质量。本文主要从两个方面介绍PC-lint,第一部分是在与不同的工具安装集成,第二部分是PC-lint的使用方法。1. 安装PC-lint及如何集成到

逍遥剑客的专栏 6万+

软件质量之道:PCLint之二

上篇文章中PCLint工具进行了更新,请小伙伴们注意重新下载,主要有两方面的原因。第一,原工具应该是有问题的一个版本,升级后,不能正确的解析Visual Studio的工程文件,在这上面,整整花费了我一个多星期的时间来调查,是导致这篇文章难产的主要凶手。第二,增加了Visual Studio 2010, 2012, 2013等版本的配置文件,方便大家的使用。

风马牛 3007

PC-lint 代码规范检查

PC-lint 代码规范检查,PC-lint 代码规范检查, PC-lint 代码规范检查, PC-lint 代码规范检查, PC-lint 代码规范检查,

搭建PCLint与SourceInsight全套环境

1、下载PCLint和SourceInsight工具       PCLint工具地址:      http://download.youkuaiyun.com/detail/u012329294/8280039      SourceInsight工具地址:  http://download.youkuaiyun.com/detail/u012329294/6363931   2、安装SourceIns

u012329294的专栏 1万+

Windows下玩转DeepSeek-R1:Ollama+Docker配置RAGFlow的3种网络调试方案

本文详细介绍了在Windows环境下使用Ollama和Docker配置RAGFlow的三种网络调试方案,帮助开发者解决本地部署AI知识库系统时的网络隔离问题。通过host.docker.internal直连、自定义Docker网桥网络和端口映射与反向代理三种方法,实现DeepSeek-R1模型与RAGFlow的高效通信,提升本地AI应用的开发效率。

weixin_28347369的博客 247

PC-Lint 使用中头文件包含的问题,以及VSCode中文乱码问题

PC-Lint 使用中头文件包含的问题,以及VSCode中文乱码问题 最近使用PC-Lint和VSCode时有一些小问题,而且感觉以后也还会遇到,在这里做一下记录。 1. PC-Lint 使用中头文件包含的问题 命令模式下使用pclint发生错误:Error 322: Unable to open include file ‘stdio.h’ 解决方法: 在pclint路径下,找到std.lnt文件,里面添加: -i编译器目录下的include文件夹路径。 参考链接:pc-lint的使用方法 2. VS

享受当下 2512

海思SD3403/SS928开发(二)环境搭建:从零到一构建高效开发环境的实战指南

本文详细介绍了海思SD3403/SS928开发板环境搭建的全流程,包括Ubuntu系统选择、基础配置、开发环境依赖安装、SDK工具链配置等关键步骤。通过实战经验分享,帮助开发者避免常见问题,快速构建高效开发环境,提升开发效率。

weixin_28717683的博客 284

深入解析UVM寄存器模型:reg2bus与bus2reg的隐式调用机制

本文深入解析了UVM寄存器模型中reg2bus与bus2reg函数的隐式调用机制。通过追踪一次寄存器访问的完整旅程,揭示了这两个关键函数是如何在uvm_reg_map和uvm_reg_predictor中被框架自动调用的,从而在抽象的寄存器操作与具体总线事务之间完成转换,并实现镜像值的自动更新。掌握此机制是高效调试和灵活应用UVM寄存器模型的基础。

weixin_29211309的博客 441

PCLint

转载自:http://blog.youkuaiyun.com/feng_ma_niu/article/details/40631521。也进行了一些修改 1 PCLint简介 首先,提供一下PCLint的相关链接: 官网:http://www.gimpel.com/html/index.htm 最新9.0L安装包:http://download.youkuaiyun.com/detail/winking324

3798

手把手教你用CV5200模块搭建无人机高清图传系统(含实测数据)

本文提供了一份基于CV5200模块搭建远距离无人机高清图传系统的完整实战指南。文章详细解析了系统架构、硬件连接、软件配置与优化,并分享了实地飞行测试数据。核心在于利用CV5200的LR-WiFi私有协议,在视距下实现数公里级的稳定高清视频传输,为DIY爱好者和行业应用提供了高性价比的解决方案。

day7的博客 720

PCLint使用(二)

PCLint使用(二) PCLint(一)中的遗留问题已经解决。 问题一、Lint多个C文件 方法一: (1) 在LINT软件目录下建立PRJLINT.LNT文件,文件的第一行是使用的LINT配置文件名,从第二行开始,列出想所有要LINT的*.C文...

aezympxj84131的博客 121

一文吃透:从零到一开发一套 ABAP RAP 应用的完整路径

ABAP RAP开发实战摘要 本文系统介绍了ABAP RESTful Application Programming Model (RAP)在企业级应用开发中的实施路径。文章以出差申请业务场景为例,详细拆解了RAP开发的六步主线流程: 数据库表设计:规范主键、审计字段设计 CDS数据建模:通过视图定义业务对象实体及关联 行为定义与实现:使用BDEF声明事务规则,Behavior Pool类实现业务逻辑 业务对象投影:裁剪服务接口视图 服务定义与绑定:按OData协议暴露服务 UI集成测试:支持Fiori E

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 509

LangGraph 实战教程:搭建一个智能办公多Agent协作平台

只存储必要的信息:不要把所有的原始数据都存储在状态中,比如销售数据可以存储在数据库或向量数据库中,状态中只存储数据的 ID 或摘要。使用类型提示:避免类型错误,提高代码的可维护性。支持增量更新:LangGraph 默认支持状态的增量更新(通过reduce函数),比如messages列表可以通过追加新消息的方式更新,而不是每次都重新创建整个列表。Normal Edge 的定义非常简单,只需要在StateGraph对象(稍后会详细讲解)上调用add_edge# 创建一个 StateGraph 对象。

SuperAGI2025 221

代码静态检查之pclint

代码静态检查之pclint

岳来的博客 1万+

26、特洛伊木马:威胁与防范

本文详细介绍了多种常见的特洛伊木马,包括RegForm、ProMail和远程访问特洛伊木马(RATs),并分析了其工作原理与危害。重点讲解了著名RATs如Back Orifice、SubSeven和The Thing的技术特点,揭示了黑客编写特洛伊木马的常用语言与方法。同时,提供了有效的防范策略,如谨慎获取软件、使用回滚程序、杀毒软件、防火墙及反特洛伊木马程序,并通过流程图展示了防御机制。旨在帮助用户识别威胁并加强系统安全防护。

e3f4g5的博客 88

linux pclint配置_自动代码检查分享之PCLINT

当我们花了很长时间来重现和排查一个问题后,发现原来是由于变量未赋初始值;当我们排查一个客户重大异常后,发现原因尽然是IF判断时用了单等号。这些都是比较低级的问题,但凡一个有基础的程序员都能看出来写错了,但是每个人都有可能犯这种错误,那么如何避免类似的错误出现呢?俗话说:常在河边走哪有不湿鞋,对于这种有规则且重复性的工作,靠人工是不行的,必须要引入工具检查,从而避免此类错误的再次出现。而对于C/C+...

weixin_39541681的博客 700

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

PClint和SI的结合静态代码检视

前言:    网上关于PClint和SI的结合文档很多,但是都没有很好的结合到大型的代码开发实际中去。这篇文章将这个详细的介绍了如何正确的配置PClint,使能在大型的代码开发中使用静态检视代码一:文档编写的目的    在编写C/C++代码的时候,针对代码的静态检视工作在紧张工作时候变得极为重要。调试了多种的静态检视工具,最终还是觉得PClint+SI的静态检视工作,对于代码的检视将会大大的减少编...

Toni 2896

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

如何用PCLint检查PIC32单片机的C代码

1. 引言C语言在嵌入式领域应用非常广泛,其主要优点是灵活和高效,但若在使用过程中不加以规范,容易引入各种潜在的代码问题。先来看一段C代码,这段代码中有多少C语言的使用错误?uint8_t vFunc(void) { uint8_t index = 0; for (index = 0; index < 5; index++) { if (index == 3)

wzz4420381的博客 2214

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

pclint下载、安装和使用

最近发现有一款C编程语法检查工具:pclint,刚好手头上的项目需要,而且Keil编译器无法检查比较弱,所以就捣鼓了一下,用上了! 环境:windows KeilC51

qq_40632679的博客 6374

Pclint VC配置

VC6 配置Pclint: 1. 配置 Pclint,for VC6:     (1). 将lint.rar解压至 C 盘根目录, C:\lint 即为 Pclint 的安装目录     (2).将 C:\lint\lnt 下的3个文件 lib-w32.lnt,env-vc

zhangcunli的专栏 3223

pclint在VS2013中的配置

在VS2013下使用pclint进行单个文件及整个工程的方法

finewind的专栏 1万+
上一篇: 5个静态代码检查工具
下一篇: 常见linux 路径备注及说明
RunBoying
博客等级 码龄17年 41粉丝 117原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值