我正在使用ReadFile读取从我运行的命令输出的管道。但是我的理解是ReadFile仅读取字节,并不关心它们是WCHAR还是CHAR。它只是读取字节。
我试图了解如何确定从缓冲区读取的字节是WCHAR还是CHAR,以便可以正确打印。这些字节将被发送回将要打印的Python服务器。
最佳答案
您基本上是在从流中读取数据,无论是文件管道还是内存缓冲区。因此,您通常会获得一个指向程序中缓冲区的指针。由您的应用程序逻辑决定如何将这些字节视为CHAR或WCHAR,即UTF-8或UTF-16。请记住,可以将CHAR元素的缓冲区强制转换为WCHAR之一,反之亦然。
我建议您使用WHCAR使您的应用程序兼容UTF-16。您可以参考此问题In C++ when to use WCHAR and when to use CHAR
关于c - Windows C编程ReadFile CHAR或WCHAR,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54770835/