Computer >> Máy Tính >  >> Lập trình >> lập trình C

Làm thế nào để sửa đổi một biến const trong C?

Trong C hoặc C ++, chúng ta có thể sử dụng các biến hằng số. Các giá trị của biến hằng số không thể thay đổi sau khi khởi tạo. Trong phần này, chúng ta sẽ xem cách thay đổi giá trị của một số biến không đổi.

Nếu chúng ta muốn thay đổi giá trị của biến hằng số, nó sẽ tạo ra lỗi thời gian biên dịch. Vui lòng kiểm tra mã sau để hiểu rõ hơn.

Ví dụ

#include <stdio.h>
main() {
   const int x = 10; //define constant int
   printf("x = %d\n", x);
   x = 15; //trying to update constant value
   printf("x = %d\n", x);
}

Đầu ra

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

Vì vậy, điều này đang tạo ra một lỗi. Bây giờ chúng ta sẽ xem cách chúng ta có thể thay đổi giá trị của x (là một biến không đổi).

Để thay đổi giá trị của x, chúng ta có thể sử dụng con trỏ. Một con trỏ sẽ trỏ dấu x. Bây giờ sử dụng con trỏ nếu chúng tôi cập nhật nó, nó sẽ không tạo ra bất kỳ lỗi nào.

Ví dụ

#include <stdio.h>
main() {
   const int x = 10; //define constant int
   int *ptr;
   printf("x = %d\n", x);
   ptr = &x; //ptr points the variable x
   *ptr = 15; //Updating through pointer
   printf("x = %d\n", x);
}

Đầu ra

x = 10
x = 15