C++ 如何确定宽字符串文字的结尾?
我知道这个问题与编译器有关。所以我想要一个可靠的方法来确定 例如:C++ 如何确定宽字符串文字的结尾?,c++,c,string,unicode,character-encoding,C++,C,String,Unicode,Character Encoding,我知道这个问题与编译器有关。所以我想要一个可靠的方法来确定 例如: const wchar_t str[] = L"飞流直下三千尺"; 我如何知道str是小端还是大端 是否有编译器保证宽字符串文字的endianness与目标体系结构的endianness相同?没有编译器保证wchar\u t甚至具有endianness(或者是Unicode),这不就是检测机器是否为little endian吗?如果是这样的话,就有一百万个重复。不能保证endianness是处理器的endianness。@xm
const wchar_t str[] = L"飞流直下三千尺";
我如何知道str
是小端还是大端
是否有编译器保证宽字符串文字的endianness与目标体系结构的endianness相同?没有编译器保证
wchar\u t
甚至具有endianness(或者是Unicode),这不就是检测机器是否为little endian吗?如果是这样的话,就有一百万个重复。不能保证endianness是处理器的endianness。@xmlmx不能保证例如int
的endianness也是处理器的endianness。检测wchar\u t
的尾端的方法与检测int
的尾端的方法相同,只是将int
替换为wchar\u t
@xmllmx,同样,它与int
没有任何区别。我不是说检测int
的尾端,假设wchar\u t
的存储方式相同,我是说你可以检测wchar\u t
的尾端,就像检测int
的尾端一样;这是一个数组。它的元素可以是大端或小端,因此问题更恰当地表述为“如何确定wchar\u t
的端度”。