Có nhiều cách khai báo hằng trong C và C ++. Trước hết, chúng ta cần hiểu hằng số là gì.
Hằng số là gì?
Không đổi có nghĩa là không thể thay đổi. Về mặt lập trình, hằng số là các giá trị cố định được gán cho các biến để chúng không thể bị thay đổi bởi bất kỳ biến hoặc thành phần nào khác trong quá trình thực thi chương trình. Hằng số có thể thuộc bất kỳ kiểu dữ liệu nào. Chúng được sử dụng trong lập trình để xác định thành phần không thay đổi của chương trình. Có một số dữ liệu hoặc biến có giá trị cố định như Pi có giá trị float cố định là 3,14, do đó nó có thể được khai báo là hằng số.
Có nhiều cách để khai báo các biến dưới dạng hằng số
-
Sử dụng từ khóa const - Đây là cách được sử dụng phổ biến nhất để làm cho các biến là hằng số. Nếu chương trình cố gắng thay đổi giá trị của biến hằng được khai báo là const thì trình biên dịch sẽ thông báo lỗi.
Ví dụ
#includeint main () {const int value =5; printf ("giá trị của biến hằng là:% d", value); // thử thay đổi giá trị của biến hằng value =8; trả về 0;}
Đầu ra
Đầu ra cho mã này sẽ là -
|| ===Xây dựng tệp:"không có mục tiêu" trong "không có dự án" (trình biên dịch:không xác định) ===| C:\ Users \ dell \ OneDrive \ Documents \ test.c || Trong hàm 'main' :| C:\ Users \ dell \ OneDrive \ Documents \ test.c | 7 | error:gán giá trị 'chỉ có thể thay đổi được đọc' ||| ===Xây dựng không thành công:1 lỗi, 0 cảnh báo ( 0 phút, 0 giây) ===|
-
Bằng cách tạo Enum - Enum hoặc Enumeration cũng được sử dụng để tạo một tập hợp các giá trị không đổi. Enum là kiểu dữ liệu do người dùng định nghĩa được sử dụng trong nhiều ngôn ngữ lập trình bao gồm C và C ++. Ví dụ:chúng ta có thể xác định các ngày trong tuần là enum vì chúng có các giá trị dữ liệu cố định thuộc loại chuỗi.
Ví dụ
#includeenum months {Jan, Feb, Mar, April, May, Jun, Jul, August, Sep, Oct, Nov, Dec}; int main () {int i; printf ("các giá trị là:"); for (i =Jan; i <=Dec; i ++) printf ("% d", i); trả về 0;}
Đầu ra
Đầu ra cho mã này sẽ là -
các giá trị là:0 1 2 3 4 5 6 7 8 9 10 11
-
Sử dụng Macro - Macro là loại chỉ thị tiền xử lý. Chúng chứa đoạn mã được biết đến với một cái tên. Nó được tạo bằng cách sử dụng ‘#define’. Bất cứ khi nào trình biên dịch xác định tên của macro trong mã, nó sẽ thay thế nó bằng mã. Do đó, chúng ta có thể nói rằng macro là loại giá trị không đổi.
Ví dụ
#includeusing namespace std; #define val 10int main () {val ++; // chúng tôi không thể sửa đổi giá trị của hằng số trả về 0;}
Đầu ra
Đầu ra cho mã này sẽ là -
Main.cpp:6:8:error:không thể gán biểu thức
Ví dụ
#includeusing namespace std; #define val 10int main () {int product =1; cout <<"Giá trị của Macro val là:" < Đầu ra
Đầu ra cho mã này sẽ là -
Giá trị của Macro val là:10 Sản phẩm là:1410065408 Giá trị của Macro val sau khi sửa đổi là:10