wordcount源代码c语言,wordcount--realized by c

wc.exe是一个用于统计文本文件行数、单词数和字符数的实用工具。它接受长选项和短选项参数,如`-c`、`-w`、`-l`,并可以组合使用。此外,`-o`参数用于指定输出文件。文章详细解释了每个参数的功能以及如何处理命令行参数,包括一个特别的`-h`参数,用于显示帮助信息。实现wc.exe时,需要考虑如何正确解析和处理这些参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

wc.exe 编写说明

1需要说明

1.1 概要

wc接收一个文本文件,并统计这个文本文件中的信息(行数、字数等)

1.2 基本功能

wc.exe -c file.c //返回文件 file.c 的字符数

wc.exe -w file.c //返回文件 file.c 的单词总数

wc.exe -l file.c //返回文件 file.c 的总行数

wc.exe -o outputFile.txt file.c //将结果输出到指定文件outputFile.txt

注意:

空格,水平制表符,换行符,均算字符。

由空格或逗号分割开的都视为单词,且不做单词的有效性校验,例如:thi#,that视为用逗号隔开的2个单词。

-c, -w, -l参数可以共用同一个输入文件,形如:wc.exe –w –c file.c 。

-o 必须与文件名同时使用,且输出文件必须紧跟在-o参数后面,不允许单独使用-o参数

2 基本思路

2.1 接受参数

参数的形式有两种:长选项、短选项,选项间可以组合,长选项用空格隔开各个参数

例: wc.exe --word --charater file.c

短选项可以多个直接叠加或者,也像长选项一样分开写

例: wc.exe -wc file.c wc.exe -w -c file.c

对于一个命令行程序,它可以接受来自命令行的参数。

c语言的main函数中有两个参数:int main (int argc, char *argv[]),这两个参数就是用于这个参数的输入。

argc 一个整数,代表有多少个命令行参数,在此注意两个点

1、 参数间是用空格格开的;

2、程序名是第一个参数。

argv[i]是一个指针,指向第i个参数的首地址

理解了以上的两人个参数就简单了,只需要做一些基本的字符串处理就可以了。

2.2.1 -h参数

这个参数单独说是因为这个参数不能和别的参数混用,所以我在程序里面是单独写的,一开始就判断是否用户需要的是help帮助,如果是的话,那么完全不必要再运行程序(打开文件),直接exit中止进程。

2.2.2 -w -c -l 参数

这三个参数都是一个路数:

1、打开文件;

2、判断要做的操作;

3、执行操作。

它们间只有步骤3是不同的,所以有理由把3写成不同的函数,再由2判断执行哪个。

有一些细节问题是可以考虑的。

比如,因为单复数的关系,有一行/个 单词/字母,应该是不同的表达(是否有s)

额外就是判断一个单词的算法也是值得考虑的问题,我的想法是,如果这个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值