前言:

近几天参加公司培训,公司要求,开发的时候使用source insight、PC-lint和VC来编程和调试,这不用不知道,一用吓一跳,这套工具一组合简直爽的根本停不下来。

先说一下各自的作用,source insight主要用于编辑和浏览代码,编写代码的时候它有大量的提示,就像使用了搜狗输入法一般,还有很重要的是把鼠标往一个变量上面一停,下面的上下文窗口就把它的相关定义显示出来了,对于包含大量结构体的复杂系统来说,非常方便,当然还有其他好多优点。然后,是PC-lint,这个是一个静态检查工具,有的时候我们编程序的时候,虽然编译通过了,且功能实现了,但是还是会存在潜在的风险,而编译器往往会把这些潜在的错误放掉,所以公司要求使用PC-lint进行静态检查。最后就是VC了,这个没什么好说的,编译调试工具而已,因为前面两个工具没有编译调试功能,所以使用VC了,我这里由于电脑安装的是VS,所以下面就总结一下source insight、PC-lint和VS的一起使用吧。

一、高效的使用VS和source insight

(1)使用VS建立一个工程,并且在工程中添加必要的源文件,如VS工程文件如下:

(2)在source insight中建立一个工程(注意跟VS的工程建立在同一个文件夹下)

细节如下:

同步完之后可以看到VS中建立的三个文件,以后每次改变工程文件的时候,都要在source insight中project-Add and remove project files中进行文件的添加删除,然后同步。

建立完之后目录如下:

其中VS的源文件,在test中。

这是就可以在source insight中编写代码了,然后记得每次编完之后保存一下文件,再切回到VS工程界面,会问你接受文件改变不?接受的话文件中的内容就被改成在source insight中编写的代码了,反过来一样(因为它们都是对同一个文件进行编码的)。

(3)在source 中添加并同步source insight工程

二、在source insight中集成PC-lint

编完代码之后就可以编译调试了,都搞定之后,可以使用PC-lint进行静态检查,以进一步减少潜在的错误,为了方便时候可以在source insight中集成PC-lint命令,并给它设置一个快捷键,这样使用起来就方便了。

(1)安装好source insight之后,下载一个无需安装版本的PC-lint,然后将其复制到C盘根目录。

(2)source insight中选择options-custom command进行命令设置如下:

其中command名字随便取,这里取的是pc-lint

其他参数如下:

Run: C:\LINT\LINT-NT.EXE option.lnt %f

Dir: C:\LINT

Pattern: ^\([a-zA-Z].*\)(\([0-9][0-9]*\)).*

然后选择add,这回打开这个命令点击run就可以检查运行PC-lint检查source insight当前工程下的文件了,为了更方便的使用这个命令,可以把这个命令添加到别的窗口中,还可以添加快捷键。

options-menu assignments

如下在command中输入关键字,找到要设置的命令PC-lint,然后选择一个Menu中的菜单(如help),还可以调整其位置,然后 insert即可,这回在help菜单中就可以直接看到PC-lint的按钮了。

还可以添加快捷键:

options-keys assignment

这样以后使用ctrl+p就可以直接调用PC-lint进行静态检查了。

如,下面这个提示:表示num1和num2都没有初始化,n定义了但是没有使用。

source insigt、pc-lint、VS联合使用的更多相关文章

  1. PC lint -sem 用法示例

    -sem(std::auto_ptr::auto_ptr,custodial(1)) // the auto_ptr class type // handles custody automagical ...

  2. Top 40 Static Code Analysis Tools

    https://www.softwaretestinghelp.com/tools/top-40-static-code-analysis-tools/ In this article, I have ...

  3. debug makefile 及 lint 软件质量软件

    make -d should give you more than enough information to debug your makefile. Be warned: it will take ...

  4. [Android Memory] Android Lint简介(转载)

    英文原文:http://tools.android.com/tips/lint  参照文章:http://blog.csdn.net/thl789/article/details/8037473 转载 ...

  5. Android Lint简介(转)

    转载自原文:http://blog.csdn.net/hudashi/article/details/8333349,感谢原作者. 英文原文:http://tools.android.com/tips ...

  6. eclipse lint工具介绍

    一.基本介绍 作为移动应用开发者,我们总希望发布的apk文件越小越好,不希望资源文件目录中没有用到的图片等资源也被打包进apk,不希望应用中使用了高于minSdk的api,也不希望AndroidMan ...

  7. Android 性能优化(1)性能工具之「 lint 」 :Improving Your Code with lint:优化代码

    Improving Your Code with lint 1.See Also lint (reference) Using Android Annotations In addition to t ...

  8. Keil MDK中使用pc-lint的详细方法

    keil MDK版本:V4.03 PC-lint版本:  V8.0 关于pc-lint的强大作用,网上有很多,这里不想再复述,只说一句:能通过pc-lint检验的程序不一定没有问题,但通过了pc-li ...

  9. 用VC进行64位编程

    用VC进行64位编程 分类: C/C++2014-04-30 15:14 532人阅读 评论(0) 收藏 举报 本文转自:http://www.usidcbbs.com/read-htm-tid-52 ...

随机推荐

  1. node.js的安装与第一个hello world、node.js的初始化

    1.下载node.js文件 2.windows下点击安装  重复下一步即可 3.编辑工具  EditPlus编辑器 4.新建保存目录的文件夹,并新建一个文本文档 5.打开EditPlus编辑器  打开 ...

  2. fzu2181(点的双连通分量+求奇环)

    求出每个点双连通分量,如果在一个点双连通分量中有奇环,则这个分量每个点都在一个奇环中.  关键是要知道怎么求点双连通分量以及点双连通的性质. fzu2181 http://acm.fzu.edu.cn ...

  3. 【BZOJ3638】Cf172 k-Maximum Subsequence Sum 线段树区间合并(模拟费用流)

    [BZOJ3638]Cf172 k-Maximum Subsequence Sum Description 给一列数,要求支持操作: 1.修改某个数的值 2.读入l,r,k,询问在[l,r]内选不相交 ...

  4. Python之可迭代对象、迭代器、生成器

    在使用Python的过程中,很容易混淆如下几个关联的概念: 1.容器(container) 2.可迭代对象(Iterable) 3.迭代器(Iterator) 4.生成器(generator) 5.生 ...

  5. 如何避免升级 Linux 实例内核后无法启动

    如何避免升级 Linux 实例内核后无法启动_系统配置_操作运维 Linux_常见问题_云服务器 ECS-阿里云 https://help.aliyun.com/knowledge_detail/59 ...

  6. JavaScript和jQuery改变标签内容

    HTML: <div id="mazey">content</div> JavaScript: var mazey=document.getElementB ...

  7. angular2表单初体验

    1.创建movie模型. 最近对angular2比较感兴趣,跟着官网学习一段,练习了一个表单demo! src/app/movie.ts文件: export class Movie{ construc ...

  8. 常用代码块:java使用系统浏览器打开url

    方法一:用于windows try { Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "+url) ...

  9. PEP8 Python 编码规范整理(Python)

    add by zhj: 这个是豆瓣网友整理的PEP8,算是PEP8的一个简易版本,因为原PEP8内容太多,所以建议先看这篇文章,然后再看PEP8中文翻译 原文:http://www.douban.co ...

  10. npm报错npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2018-03-15T01_48_14_769Z-debug.log

    全局更新 npm npm i npm -g 就ok了