Hằng số là giá trị không thay đổi khi chạy chương trình; giá trị cố định.
Trong C, số, ký tự, chuỗi ký tự gọi là hằng số (literals). Có thể thuộc mọi kiểu dữ liệu.
Phân loại hằng số
- Hằng sơ cấp (Primary constants): Integer, Float, Character.
- Hằng thứ cấp (Secondary constants): Array, Structure, Pointer, Enum, v.v.
Cú pháp khai báo hằng
const kieu_du_lieu ten_bien;
Ví dụ hằng sơ cấp
#include <stdio.h>
int main() {
const int height = 20;
const int base = 40;
float area;
area = 0.5 * height * base;
printf("Diện tích tam giác: %f\n", area);
return 0;
}
Kết quả ví dụ 1
Diện tích tam giác: 400.000000
Ví dụ hằng thứ cấp (Con trỏ)
#include <stdio.h>
void main() {
int a = 10;
int *p = &a;
printf("a = %d\n", a); // 10
printf("p = %p\n", (void*)p); // địa chỉ
*p = 12; // Thay đổi giá trị qua con trỏ
printf("a = %d\n", a); // 12
printf("p = %p\n", (void*)p); // địa chỉ không đổi
}
Kết quả ví dụ 2
a = 10
p = 0x7FFC1234
a = 12
p = 0x7FFC1234