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

Cách sửa đổi biến const trong C

Trong C/C++, biến const không thể thay đổi sau khởi tạo. Ở đây ta xem cách thay đổi giá trị biến const.

Gán trực tiếp cho const gây lỗi compile-time.

Ví dụ lỗi

#include <stdio.h>

int main() {
    const int x = 10;
    printf("x = %d\n", x);
    x = 15; // lỗi
    printf("x = %d\n", x);
    return 0;
}

Kết quả

[Error] assignment of read-only variable 'x'

Để thay đổi, dùng con trỏ. Con trỏ trỏ tới x, cập nhật qua con trỏ sẽ không lỗi.

Ví dụ sửa qua con trỏ

#include <stdio.h>

int main() {
    const int x = 10;
    int *ptr;
    printf("x = %d\n", x);
    ptr = &x;
    *ptr = 15; // Cập nhật qua con trỏ
    printf("x = %d\n", x);
    return 0;
}

Kết quả

x = 10
x = 15