WideCharToMultiByte() 和 wcstombs() 有什么区别 什么时候用哪个?
最佳答案
简而言之:WideCharToMultiByte
函数在参数列表中公开了用于转换的编码/代码页,而 wcstombs
没有。这是一个主要的 PITA,作为标准 does not define wchar_t
将使用什么编码,而作为开发人员,您当然需要知道要转换成/从什么编码。
除此之外,WideCharToMultiByte
当然是一个Windows API函数,在其他平台上是不可用的。
因此,如果您的应用程序不是专门为可移植到非 Windows 操作系统而编写的,那么我建议您使用 WideCharToMultiByte
而无需考虑。否则,您可能想与 wcstombs
搏斗,或者(最好是恕我直言)研究使用功能齐全的可移植 Unicode 库,例如 ICU .
关于c++ - WideCharToMultiByte() 与 wcstombs(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5620831/