void main()
{
int x = 5;
const int* p;
p = &x;
x++;
*p = 4;
printf(“%d”, *p);
getch();
}
What is output of code?
A. 4
B. 5
C. 6
D. Complier Error
Hướng dẫn
Chọn D là đáp án đúng
Xem lời giải
Xem lời giải
p là con trỏ tới hằng số (pointer to constant), nói cách khác ta không thể dùng p để thay đổi giá trị của vùng nhớ mà p trỏ đến.
Nhưng ta có thể thay đổi giá trị của vùng nhớ đó bằng chính biến đó (x++ là OK). *p = 4 –> gây lỗi.
Thư viện tài liệu12 Tháng bảy, 2023 @ 3:09 chiều