Phân loại lỗi
Dựa trên thời điểm phát hiện: Compile-time error (lỗi biên dịch) và Runtime error (lỗi chạy).
Bảng so sánh
| STT | Tiêu chí | Lỗi biên dịch | Lỗi chạy |
|---|---|---|---|
| 1 | Tham chiếu | Lỗi cú pháp, ngữ nghĩa | Lỗi khi thực thi |
| 2 | Phát hiện | Biên dịch viên bắt tại lúc code | Không bị biên dịch viên bắt, chỉ thấy khi chạy |
| 3 | Sửa chữa | Sửa ngay khi code | Phải chạy mới biết, sửa sau |
Ví dụ lỗi biên dịch
#include <stdio.h>
int main() {
int x = 100, y = 155;
printf("%d", (x, y)) // thiếu dấu ;
}
error: expected ';' before '}' token
Ví dụ lỗi chạy
#include <stdio.h>
int main() {
int n = 9, div = 0;
div = n / 0; // chia cho 0
printf("result = %d", div);
}
warning: division by zero Runtime: Floating point exception