Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Assertions (Đẳng ngôn) trong C/C++


Chúng ta sẽ tìm hiểu assertions (đẳng ngôn) trong C/C++. Macro thư viện C void assert(int expression) cho phép ghi thông tin chẩn đoán ra luỗi lỗi chuẩn. Nói cách khác, nó dùng để thêm chẩn đoán vào chương trình C.

Khai báo macro assert():

void assert(int expression);

Tham số expression có thể là biến hoặc bất kỳ biểu thức C nào. Nếu expression đánh giá TRUE, assert() không làm gì. Nếu FALSE, assert() hiển thị thông báo lỗi trên stderr (luỗi lỗi chuẩn) và dừng thực thi chương trình.

Ví dụ mã

#include <assert.h>
#include <stdio.h>

int main() {
    int a;
    char str[50];
    printf("Nhập giá trị nguyên: ");
    scanf("%d", &a);
    assert(a >= 10);
    printf("Số nguyên nhập là %d\n", a);
    printf("Nhập chuỗi: ");
    scanf("%s", str);
    assert(str != NULL);
    printf("Chuỗi nhập là: %s\n", str);
    return 0;
}

Kết quả

Nhập giá trị nguyên: 11
Số nguyên nhập là 11
Nhập chuỗi: tutorialspoint
Chuỗi nhập là: tutorialspoint