次のプログラムでは、非ASCII文字を含む文字列の長さを測定しようとしています。ASCII以外の文字の正しいサイズを測定するにはどうすればよいですか?
しかし、非ASCII文字を使用しているときにsize()
が正しい長さを印刷しない理由がわかりません。
#include <iostream>
#include <string>
int main()
{
std::string s1 = "Hello";
std::string s2 = "इंडिया"; // non-ASCII string
std::cout << "Size of " << s1 << " is " << s1.size() << std::endl;
std::cout << "Size of " << s2 << " is " << s2.size() << std::endl;
}
出力:
Size of Hello is 5
Size of इंडिया is 18
ライブデモWandbox。
ため
重要性の参照リンクhereを意味は何? –
文字列の正しい出力は6です。 – rsp
@rsp、 'std :: wstring'でサイズ' 6'を取得します – DAle