社区
C语言
帖子详情
用C语言做一个对C源程序进行行数统计的程序!急~~~
citytiti
2004-08-30 09:23:01
对C源程序文件进行行数统计的程序,要求输出一个指定目录下的所有.C及.H文件的大小,总行数,代码行数及注释行数.
要求用C语言编写。。。
...全文
402
14
打赏
收藏
用C语言做一个对C源程序进行行数统计的程序!急~~~
对C源程序文件进行行数统计的程序,要求输出一个指定目录下的所有.C及.H文件的大小,总行数,代码行数及注释行数. 要求用C语言编写。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
citytiti
2004-09-04
打赏
举报
回复
谢谢大家啊!太感谢了!
lion1900
2004-08-31
打赏
举报
回复
/************************************************
* -name [IN]源文件名 *
* -code [OUT]代码行数 *
* -comment [OUT]注释行数 *
* 返回总行数。出错返回0 *
*************************************************/
int sum_line(char *name, int *code, int *comment)
{
FILE *fp;
char buff[BUFF_MAX];
int flag;
if((fp = fopen(name, "rt")) == NULL)
return 0;
(*code) = 0;
(*comment) = 0;
flag = 0;
empty = 0;
while(!feof(fp))
{
fgets(buff, BUFF_MAX, fp);
if(strstr(buff,"\n") == buff)
continue;
if(flag == 1)
{
if(strstr(buff, "*/") != NULL)
flag = 0;
(*comment)++;
continue;
}
if(strncmp(buff, "//", 2) == 0)
(*comment)++;
else if(strncmp(buff, "/*", 2) == 0)
{
if(strstr(buff, "*/") != NULL)
(*comment)++;
else
flag = 1;
}
else
(*code)++;
}
fclose(fp);
return (*code) + (*comment);
}
pacman2000
2004-08-31
打赏
举报
回复
int i; // 注释。。。
这算是一行? 一个代码行? 一个注释行? 还是一个代码行加一个注释行?
楼主的需求描述不清楚啊。
lion1900
2004-08-31
打赏
举报
回复
mark
短歌如风
2004-08-31
打赏
举报
回复
一般来说,C代码中的有效代码行数与分号的个数是大致接近的,没有必要为了精确统计做得那么复杂。如果一定要精确统计,就要完成一个C代码语法分析器了。
zwzzj
2004-08-31
打赏
举报
回复
#include <stdio.h>
void main(int argc,char **argv){
FILE *fs,*fd;
int ln=1;
char buf[512];
if(argv!=3){
printf("parament error!\n");
printf("\nformat:filename source_file destion_file\n");
getch();
exit(0);
}
if((fs=fopen(argv[1],"rt"))==NULL){
printf("Cannot oprn this file %s\n",argv[1]);
exit(0);
}
if((fd=fopen(argv[2],"wt"))==NULL){
printf("Cannot oprn this file %s\n",argv[2]);
exit(0);
}
while(fgets(buf,512,fs)!=NULL)
if(fprintf(fd,"%d%-6s",ln++,buf)==NULL){
printf("Cannot write to %s.\n",argv[2]);
fclose(fd);
exit(0);
}
fclose(fs);
printf("OK!\n");
}
ywfscu
2004-08-30
打赏
举报
回复
一行一行的读直到feof()
健之
2004-08-30
打赏
举报
回复
逐个打开每个文件,读出相应的行数等,并作出判断。
Squall1009
2004-08-30
打赏
举报
回复
?
linguanyu315
2004-08-30
打赏
举报
回复
同意楼上的.
Wugifer
2004-08-30
打赏
举报
回复
用 fgets 吧,一次一行。
zwzzj
2004-08-30
打赏
举报
回复
读出文件中的512字节到缓冲区,再调用fprintf()函数就可以了。代码明天给你传过来。
citytiti
2004-08-30
打赏
举报
回复
请高人指点迷津!最好能给我个程序!
李宠波
2004-08-30
打赏
举报
回复
怎么算是一行?如果一个回车就是一行,或者一个分号就算是一代码行,那就容易了。
Linux----
统计
所有
C语言
源
程序
中,下列系统函数的被调用次数
本文档介绍了
一个
Linux作业,要求编写
程序
统计
C语言
源
程序
中printf、open、close、read、write、fork、signal等系统函数的调用次数。通过主
程序
main.c将.c文件内容整合到data.txt,然后使用shell脚本和grep命令
统计
并输出到myresult.txt。在虚拟机环境中执行。
C语言
代码
行数
分类
统计
小
程序
(源代码)
本工具可在VS2013上运行,能分析最多9个C
程序
文件,
统计
代码、注释及空
行数
量,并识别函数,适用于常规编程习惯的C代码。
C语言
:
源
程序
简单分析器-代码
这是
一个
简单的
C语言
程序
,用于分析输入的源代码文件。
程序
读取文件,
统计
注释行、空行、总
行数
,并找出函数的开始和结束行,计算函数的平均
行数
。最后,它将结果保存到单独的文件中。
一个
简单的
统计
C
源
程序
代码
行数
的小
程序
本文介绍了
一个
用于
统计
C源文件中有效代码
行数
的
程序
。该
程序
能够排除注释和空行,提供准确的代码行计数结果。通过解析文件内容并应用特定规则来过滤非代码行,为用户提供清晰的代码
统计
信息。
【C
程序
设计语言第二版】
统计
字符数、
行数
以及单词数
本文介绍了一种使用
C语言
统计
文本文件中字符数、
行数
及单词数的方法,详细解析了如何利用getchar函数读取文件,并通过状态机思想
统计
单词数量,适用于初学者理解和实践。
C语言
70,038
社区成员
243,247
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章