首頁 >後端開發 >C++ >如何用C的cout列印指標位址?

如何用C的cout列印指標位址?

DDD
DDD原創
2024-11-04 00:22:30292瀏覽

How to Print a Pointer Address with C  's cout?

如何使用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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn