Con trỏ hằng – constant pointers
Các con trỏ được cho phép khai báo là const. Cú pháp được sử dụng cho các khai báo này như sau →
1 2 3 |
int arr[5] = {1, 2, 4, 8, 16}; int * const iptr = arr + 2; char * const cptr = "Why?"; |
Lưu ý rằng từ khóa const được đặt sau dấu * và trước tên biến – đừng quên điều này.
Cả iptr và cptr không được sửa đổi. Điều này có nghĩa là các dòng sau sẽ gây ra lỗi biên dịch:
1 2 |
--iptr; ++ cptr; |
Các thực thể được trỏ bởi con trỏ hằng thì vẫn có thể được sửa đổi mái thoải. Hai dòng code sau là hoàn toàn OK
1 2 |
*iptr = 0; *cptr = 'T'; |