Mọi người cho em xin cách đếm số dòng code với ạ, không thể đếm theo số dấu " ; ", nên em đếm các lệnh có kí tự cuối là " ; " và đếm các khối lệnh, nhưng nó chỉ đúng ở một số bài, vậy nên ai có cách nào hay thì chỉ cho em với ạ. Em cảm ơn.
Thuật toán đếm số dòng code trong 1 file
Đầu tiên bạn phải định nghĩa được line of code bạn muốn đếm là gì đã.
Lấy ví dụ đoạn code sau thì bạn sẽ đếm thành mấy dòng?
// Đây là comment
/*
Đây là 1 block comment
Dòng này có tính?;
*/
if (cond1) do_work();
if (cond2){
do_work2();
}
if (cond3)
{
do_work3();
}
2 Likes
Nếu đếm đúng thì e sẽ đếm được 5 dòng logic.
Quan trọng là phải xác định được định nghĩa kìa.
Vậy bạn đã đếm như thế nào để ra 5 dòng?
2 Likes
Theo em là các khối lệnh { } sẽ tính là một , và các câu lệnh cũng được tính là 1
- if (cond1) do_work()
- if (cond2){}
- do_work2()
- if (cond3){}
- do_work3()
Nếu làm như vậy, thì ít nhất bạn phải có 1 cái parser để hiểu được từng block của ngôn ngữ.
Bạn nên tham khảo cách đếm đơn giản hơn, như ở đây chẳng hạn https://github.com/AlDanial/cloc#how-it-works-
3 Likes
dạ, e cảm ơn, để e xem thử ạ.