如何使用C 的cout 輸出指標位址
當嘗試使用cout 列印字元指標時,流決定處理它作為字串而不是地址。出現此行為的原因是重載解析,其中 cout 選擇與參數類型相符的運算子。
在這種情況下,cout 選擇為列印C 樣式字串定義的運算子:
<code class="cpp">ostream& operator<<(ostream& o, const char *c);
但是,您需要選擇列印指標的重載:
<code class="cpp">ostream& operator<<(ostream& o, const void *p);
要將char 指針明確轉換為通用指針,請使用以下語法:
<code class="cpp">cout << static_cast<void *>(cptr) << endl;</code>
此轉換通知cout您打算輸出指針的地址而不是它指向的字串。
以上是如何用C的cout列印指標位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!