sách gpt4 ăn đã đi

c++ - `const char * const` vs `const char *`?

In lại Tác giả: IT Lão Cao Thời gian cập nhật: 28-10-2023 11:55:01 34 4
mua khóa gpt4 giày nike

Tôi đang chạy một số chương trình mẫu để làm quen lại với C++ và tôi đã gặp phải sự cố sau. Đầu tiên, đây là mã mẫu:

void print_string(const char * the_string)
{
cout << chuỗi_này << endl;
}

int chính () {
print_string("Có chuyện gì thế?");
}

Trong đoạn mã trên,chuỗi in Các thông số có thể thay đổi thànhconst char * const chuỗi. Cái nào đúng hơn?

Tôi biết sự khác biệt là một làcon trỏ tới ký tự không đổi, trong khi cái kia làcon trỏ không đổi tới ký tự không đổi. Nhưng tại sao cả hai phương pháp đều hoạt động? Khi nào nó có liên quan?

câu trả lời hay nhất

Cái sau ngăn cản bạn sửa đổi chuỗi in nội bộ chuỗi_này. Ở đây nó thực sự thích hợp, nhưng có lẽ tính dài dòng đã khiến các nhà phát triển nản lòng.

char* chuỗi_này : Tôi có thể thay đổi char chuỗi_này Cái nào trỏ tới, tôi có thể sửa đổi char Nó chỉ vào.

const char* chuỗi_chuỗi : Tôi có thể thay đổi char chuỗi_này Vị trí được chỉ tới nhưng tôi không thể sửa đổi nóchar Nó chỉ vào.

char* const chuỗi : Tôi không thể thay đổi char chuỗi_này chỉ vào vị trí, nhưng tôi có thể sửa đổichar Nó chỉ vào.

const char* const chuỗi_chuỗi : Tôi không thể thay đổi char chuỗi_này Vị trí mà nó trỏ đến không thể sửa đổi được. char

Giới thiệu về c++ - `const char * const` vs `const char *`? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/4949254/

34 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress