2015-02-10 169 views
1

用於獲取C++中字符串長度的方法似乎都計數到一個空終止字節,然後它們或者將其包含在長度中,然後返回長度達則。那麼可以說我有這樣一個字符串: 'h','e','l','l','o','\ 0','t','h','e','r ','e' 現在,如果您調用此字符串的長度,您將得到5作爲長度。我需要對此字符串進行調用,它將返回11.這是可能的嗎?包含包含空終止符字節的字符串的C++返回長度

+0

你是指字符串文字('「abc」')還是'std :: string'? – StenSoft 2015-02-10 21:52:45

+0

如果您絕對需要包含空字符的字符串,則應該單獨存儲它的大小。 – typ1232 2015-02-10 21:58:47

回答

0

C++字符串根據定義也是一個C字符串,所以它將始終以空字符結束。對於這個特殊問題,我推薦使用std :: vector < char>

+0

你可以發表你會建議的示例代碼嗎? – 2015-02-10 22:16:12

+0

據我所知,將一個字符串投射到一個向量上需要知道字符串的長度...... – Trey 2015-02-10 22:51:07

+0

@TravisElliott如果您可以詳細闡述一些問題,並從您的特定問題中顯示一些示例代碼,我會盡我所能提出解決方案。 – rodrigovr 2015-02-10 23:29:58