首頁 > 後端開發 > C++ > 如何建立帶有嵌入空字元的 std::string?

如何建立帶有嵌入空字元的 std::string?

DDD
發布: 2024-12-14 17:50:12
原創
787 人瀏覽過

How Can I Create a std::string with an Embedded Null Character?

建構帶有嵌入空字符的std::string

嘗試使用以下語法創建帶有嵌入空字符的std::string時std::string my_string("a\0b"); 只保留一個字元。發生這種情況是因為 std::string 建構子需要一個以 null 結尾的 C 字串。遇到 null 字元時,解析會停止。

要正確建構嵌入null 的std::string,請考慮以下方法:

C 14 及更高版本:

使用s 後綴引入字串文字來建立std::string 而不解釋空字元。這可以透過以下方式實現:

std::string s = "pl-<pre class="brush:php;toolbar:false">std::string x("pqrs", 5);
登入後複製
-op"s;

Before C 14:

利用接受字元陣列及其長度的字串建構子:

請記住,std::string 不使用空終止。但是,透過 c_str() 方法,您可以獲得指向包含 C 字串的內部緩衝區的指標。

以上是如何建立帶有嵌入空字元的 std::string?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板