簡體   English   中英

UTF-16字符串終止符

[英]UTF-16 string terminator

UTF-16字符串的字符串終止符序列是什么?

編輯:

讓我重新解釋一下這個問題,試圖澄清一下。 wcslen()的調用是如何工作的?

Unicode不定義字符串終止符。 您的環境或語言。 例如,C字符串使用0x0作為字符串終止符,以及.NET字符串,其中String類中的單獨值用於存儲字符串的長度。

為了回答你的第二個問題, wcslen尋找一個終止的L'\\0'字符。 我讀它的是任何長度的0x00字節,具體取決於編譯器,但如果您使用的是UTF-16(編碼U + 0000,'NUL' ),則可能是兩字節序列0x00 0x00

7.24.4.6.1 wcslen函數(來自標准

...

  [#3] The wcslen function returns the number of wide characters that precede the terminating null wide character. 

空寬字符是L'\\0'

沒有。 字符串終止符不是編碼的一部分。

例如,如果你有字符串ab ,它將以UTF-16編碼,具有以下字節序列: 61 00 62 00 如果你有大家你會得到27-59-B6-5B 因此,您可以看到沒有預定的終止序列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM