CHPV C++ | Phân biệt Syntax-error, Runtime-error and Logical error?

MỤC LỤC:

Syntax-error: Hay tiếng Việt gọi là lỗi cú pháp, loại này được phát hiện ngay ở bước biên dịch chương trình. Trình biên dịch thông báo chi tiết ra lỗi gì và ở đâu. ( Nhưng đừng tin hoàn toàn vào nó, trình biên dịch cũng không lường hết được ty tỷ các case sai mà detect và chỉ ra chính xác cần sửa ở đâu được đâu. Suy cho cùng nó cũng là do con người viết ra thôi mà 😅 ) 

Ví dụ: như lỗi thiếu dấu ; khi kết thúc một câu lệnh

#include <stdio.h>
void main()
{
    printf("Xin chao 500 anh em")
}

Ví dụ: hoặc một lỗi cú pháp toán tử so sánh == như sau

if(a ===== b) c = 10; 

Runtime-error: Lỗi này qua được ải Syntax-error, chương trình đã được biên dịch thành công, bị xảy ra bởi chương trình do đầu vào hoặc đầu ra có giá trị không mong muốn.

Ví dụ: như lỗi chia cho 0 dưới đây

#include <stdio.h>
void main()
{
    int a, b = 5, c = 0;
    a = b/c;
}

Ví dụ: Hoặc lỗi bị vòng lặp vô hạn, do điều kiện kết thúc vòng lặp luôn đúng, hoặc break bị đặt thiếu

while(stupidCondition)
{
//vòng lặp vô tận
}

Ví dụ: Hoặc lỗi can thiệp vào vùng nhớ không hợp lệ

int[] array = new int[10];
array [12] = 7; //lỗi truy cập vùng nhớ chưa cấp phát

Tất cả nếu không được xử lý sẽ dẫn tới chương trình bị crash ( hệ điều hành đình chỉ Process do vi phạm nguyên tắc hoạt động )

Logical-error: Loại này mới là loại chúng ta đau đầu nhất, và tốn xử lý của bộ não nhất. Chính là xử lý logic bị sai, dẫn đến chương trình chạy sai và ra thứ ba lăng nhăng gì đó, chứ không phải thứ chúng ta cần .

TuanTiTien++

Author:

Tôi là Tuấn Anh, một lập trình viên C++, hiện tại đang làm việc với Qt Framework. Giờ đã là bố của một thanh niên nhỏ, gần đây tôi thấy mình cần sống có trách nhiệm hơn nữa. : ]] Tôi cảm thấy nếu tôi không có nơi nào đó để ghi lại, tôi sẽ quên mất nhiều thứ. Dấu chân trên cát cũng vậy, nếu ta không chụp ảnh nó lại, rồi nó cũng sẽ bị gió làm mờ đi dần rồi mất hút hẳn. Cảm ơn anh em đã ghé qua và đọc những gì tôi viết. Hữu duyên thiên lý Ngô tương nặng, à nhầm Năng tương ngộ. : ]] Thân ái 3000!
© Giao diện website thiết kế bởi TuanTiTien.com