dva*_*ria 1 c counter line loc
我在C中编写一个简单的LOC计数器来计算我的C源文件中有多少行代码.它意味着从命令行运行,将目标文件重定向为输入,并查看打印到标准输出的总行数.例如:
counter.exe < counter.c
15
Run Code Online (Sandbox Code Playgroud)
到目前为止,我使用的唯一规则是:
仅计算超过3个字符的行(没有空白行或仅具有右括号和分号的行等).
不要将空格计为字符.
这是我的计划:
#include <stdio.h>
int main() {
int input;
int linecount = 0;
int charcount = 0;
while ((input = getchar()) != EOF) {
if (input == ' ') {
}
else if (input == '\n') {
if (charcount > 3) {
linecount++;
}
charcount = 0;
}
else {
charcount++;
}
}
printf("%d\n", linecount);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,您是否可以对规则进行一些改进,使其成为更有效的措施?人们经常将评论视为有效的代码行吗?空格或空行怎么样?
我不想一般就LOC计数的有效性开始辩论,这是我在几次访谈中被问过的事情,我认为值得一提的是,我自己的项目有多少行代码.谢谢!
一般来说,人们会:
然而,人们也承担/实践:
因此,代码行计数器通常会考虑其计算中的所有换行符.