首頁 >後端開發 >C++ >std::string 是否包含空終止符?

std::string 是否包含空終止符?

Patricia Arquette
Patricia Arquette原創
2024-12-05 04:24:11280瀏覽

Does std::string Include a Null Terminator?

std::string 是否包含空終止符?

C 中的std::string 類別本身並不包含像C 樣式一樣的空終止符(' ') strings.

問題:

下面的字串是否包含空終止符' '?

std::string temp = "hello whats up";

答案:

。 std::string 將其資料內部儲存在不帶空終止符的字元數組中。

說明:

但是,如果您使用 temp 存取 C 樣式字串表示形式.c_str(),傳回的字串中將包含空終止符。

附加資訊:

  • 您可以像任何其他字符一樣在std::string 中包含空字符,如以下示例所示:
string s("hello");
cout << s.size() << ' ';
s[1] = '';
cout << s.size() << '\n';
  • 這段程式碼印出“5 5”,說明空字元不會影響字串的大小。

以上是std::string 是否包含空終止符?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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