【 tulaoshi.com - C语言心得技巧 】
源码统计器1.1版
作者:魏镇江
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com) 下载源代码
1.1版更新介绍
岁月如梭,光阴似箭,想不到离上次1.0版推出已有1年多时间^-^。在《源码统计器》推出的这一年内,许多朋友给我来信,指出其中的不足,并有许多很好的建议和鼓励,特别要感谢如下几位:Johnson Jiang、zhangxiao、jp.xie、佟晓艺、徐雷、xwing、司徒达擎、ltzhou、Hunter、birdie。
由于过去的一年多时间内工作很忙,而且我目前从事的已不再是软件开发类的工作,因此一直无暇更新。今年春节假期终于得到几天空闲,能够将自己以往的思路重新整理一下,对《源码统计器》做一些更新工作。由于更新不大,因此只升级为1.1版。
主要更新的地方有:
1、原版本统计如下代码时出错
/*……*/……/*……
由于我原先没考虑到同一行内有两个地方注释,并且从该行开始进入注释语句(/*)。还有如下语句也统计错误:
/*/1//*/
可能是对类似于/*/的情况处理不当。如下语句统计也有问题
CString str = "abc//de";
或
char c = ''"'';char[255] s = "abc"edf//edf";
因为未考虑到字符串换行的情况。另外,1.0版对rc文件统计也不正确。我对统计算法进行了彻底改写,以上错误均已更正。
2、增加了"设置"按钮,使用户可以自己设置统计方法。就是当代码和注释语句处于同一行时,作何处理。1.0版本是作为代码行计数,但有网友反映有时需要分开计数。因此新版本增加了这项功能,用户可以根据需要自己设置成:
①只作为代码行处理;
②代码行和注释行各增加一行
③只作为注释行处理;
按第一种方式和第三种方式统计,代码行+注释行+空白行一定等于总行数,而第二种方式统计代码行+注释行+空白行大于总行数,两者之差就是既有代码又有注释符的行数。《源码统计器》缺省设置为第二种统计方法。
"设置"对话框中用户还可以设置日志文件的路径,这个文件我主要是用来记录统计中可能出现的错误。目前能记录cpp文件中字符串换行但没有用结尾的问题。
3、增加了将统计结果保存为Excel文件的功能。
4、增加了动态图标。
5、其他还做了一些小改动,不再一一说明。
新软件的界面为:
1.1版的《源码统计器》也如原版本一样,源代码完全开放。若你需要,可来信索取,我的Email是:xiaogi@sohu.com。你也可以到我的个人主页下载(http://xiaogi.nease.net)。
软件介绍
在工作中,我们经常碰到客户要求我们告之所写程序的行数,包括代码行、注释行和空白行等。这一软件就是为这一目的编写的。最先是用于对我自己写的C/C++,VC++程序进行行数统计。它可以准确快速地统计出源代码中的各种行数。后来经过不断改进,增加了对VB, Java, ASP,JSP和SQL等程序的源代码的统计,使得软件的应用范围更加广泛。网络上也有不少类似统计行数的软件,但到目前为止,我发现“源码统计器1.1版”统计速度是最快的,而且相比较发现更加准确,考虑到了源代码中可能出现的许多特殊情况。
软件优点准确无误。这当然是任何一款源代码统计工具所必需具备的功能。为此,我自建了一个测试用的cpp文件(test.cpp),在其中我设计了多个遵循c++的注释方式,但又很容易导致统计错误的"陷阱"。虽然有些注释语句看起来有点奇怪,但的确合理并且真实存在。统计该测试文件时即使出现1行的统计误差也是不允许的,否则在统计某个恰好用该种方式注释的程序时误差就可能很大。经测试,“源码统计器1.1版”能准确无误地统计出test.cpp的各种代码行数。更加快速。由于算法选取和文件处理得当,“源码统计器1.1版”的统计速度相当迅速。界面友好,易于上手。"源码统计器1.1版"界面说明清楚,相信任何人都能轻松上手。本软件无需安装,解压缩后可直接运行。功能丰富,智能统计。本软件可以统计多种源码,包括C/C+、VC++、VB、Java、ASP、Perl、Shell和TXT文件。可以将统计结果汇总保存为文本文件或csv文件,其中csv文件可被绝大部分统计软件识别(包括微软Office系列的Excel),方便今后进