Я пишу простой счетчик LOC в C, чтобы подсчитать, сколько строк кода в моих исходных файлах C.Он предназначен для запуска из командной строки, перенаправления целевого файла в качестве ввода и просмотра общего количества строк, распечатанных в стандартном формате.Например:
counter.exe < counter.c
15
Пока что я использую только следующие правила:
Подсчитывать только строки, содержащие более 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;
}
Мой вопрос: можете ли вы предложить некоторые улучшения в правилах, чтобы сделать эту меру более действительной?Люди часто считают комментарии действительными строками кода?Как насчет пробелов или пустых строк?
Я не хочу начинать дискуссию о достоверности подсчетов LOC в целом, это то, о чем меня спрашивали в нескольких интервью, и я думаю, что стоит знать, вобщий смысл, сколько строк кода мои собственные проекты.Спасибо!