我正在閱讀在 IBM RSARTE C 版本中開發的應用程式代碼。這是一段C 代碼:
const char * const * av = RTMain::argStrings();
當有兩個const和兩個時如何理解左側語法*?
uj5u.com熱心網友回復:
const char * const * av = RTMain::argStrings();
是相同的
char const * const * av = RTMain::argStrings();
const適用于const.
所以,av是一個非const指向 a const*to 的指標const char。
- 回傳的指標
av是非指標,const可以更改。 - 指標
av指向的是const,無法更改。 - 在
char該指標在指向const且不能更改。
uj5u.com熱心網友回復:
閱讀這份宣告
const char * const * av
從右到左。存在被宣告的指標av(* av),其指向一個恒定指標(* const),然后再將指向型別的物件const char。
為了簡化此宣告,請考慮此代碼片段。
const char *literal = "Hello World!";
const char * const * pointer_to_the pointer_literal = &literal;
因此pointer_to_the pointer_literal,例如使用您可能不會撰寫的指標
*pointer_to_the pointer_literal = "Bye";
你可能不會寫
**pointer_to_the pointer_literal = 'h';
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/352382.html
