亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

const char * const vs const char *?

const char * const vs const char *?

C++ C
慕尼黑的夜晚無繁華 2019-12-07 16:17:56
我正在運行一些示例程序來重新熟悉C ++,并且遇到了以下問題。首先,下面是示例代碼:void print_string(const char * the_string){    cout << the_string << endl;}int main () {    print_string("What's up?");}在上面的代碼中,print_string的參數可以改為是const char * const the_string。哪個更正確?我知道區別在于一個是指向常量字符的指針,而另一個是指向常量字符的指針。但是為什么這兩個都起作用?什么時候有意義?
查看完整描述

3 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

后者阻止您修改the_string內部print_string。在這里實際上是適當的,但是冗長的措辭推遲了開發人員。

char* the_string:我可以改變char哪個the_string點,我可以修改char在它指向。

const char* the_string:我可以改變char哪個the_string點,但我不能修改char,在它指向。

char* const the_string:我不能改變char哪個the_string點,但我可以修改char在它指向。

const char* const the_string:我無法更改charthe_string指向的點,也無法修改char其指向的點。


查看完整回答
反對 回復 2019-12-07
?
慕碼人2483693

TA貢獻1860條經驗 獲得超9個贊

指向可變字符的可變指針


char *p;

指向常量字符的可變指針


const char *p;

指向可變字符的常量指針


char * const p; 

指向常量字符的常量指針


const char * const p;


查看完整回答
反對 回復 2019-12-07
  • 3 回答
  • 0 關注
  • 1434 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號