Cで単純なLOCカウンターを作成して、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カウントの有効性について一般的な議論を始めたくありません。これはいくつかのインタビューで尋ねられたものであり、一般的な意味で、自分のプロジェクトのコード行数を知る価値があると思います。ありがとう!