Đây là một câu hỏi dựa trên câu trả lời từ câu hỏi:Char Mảng VS Char *
const char myVar* vs. const char myVar[]
const char* x = "Hello World!";
const char x[] = "Hello World!";
Tôi hiểu sự khác biệt bây giờ, nhưng những câu hỏi mới của tôi là:
(1) gì xảy ra với chuỗi "Hello World" trong dòng đầu tiên nếu tôi gán lại x? Không có gì sẽ được trỏ đến nó bởi thời điểm đó - nó sẽ bị phá hủy khi phạm vi kết thúc?
(2) Ngoài const-ness, các giá trị trong hai ví dụ khác nhau được lưu trữ trong bộ nhớ bằng trình biên dịch như thế nào?
const char x [] là nghĩa vụ phải sao chép dữ liệu vào ngăn xếp tuy nhiên. –