我必須在Windows的MSVC 10中使用Unicode UTF-8的應用程序中編寫代碼。我知道UTF-8編碼的字符串將使用每個字符1或2個字節。所以,我的問題是:std :: string是否適合這個?如果是的話,我該如何解碼字符串?據我所知std :: string只是一個字節數組,它不提供任何解碼邏輯。 我怎樣才能知道字符串的邏輯長度?我如何從字符串中提取邏輯字符?是否有任何庫可以幫助我從字符串中提取邏輯字符?UTF-8解碼庫
例如:如果我有性病字符串「奧萊報」 :: string的,我需要知道的是,長度爲3,而不是4.
UTF-8每個字符最多可以使用4個字節,而不只是一個或兩個。 – deceze
通過解碼字符串,你的意思是什麼[確切地說](http://utf8everywhere.org/#faq.glossary)?更重要的是,爲什麼你需要知道長度? Unicode通常沒有意義。 – ybungalobill