用到两个函数:MultiByteToWideChar, WideCharToMultiByte。 使用这两个API实现任意两种字符编码的转换非常简单:将源字符串使用MultiByteToWideChar转换成unicode编码,再将转换后的unicode编码使用WideCharToMultiByte转换成指定的字符编码。 下面是一段演示程序:
- #include <windows.h>
- #include <tchar.h>
- #include <stdio.h>
- #include <locale.h>
- void hexdump(const void* addr, int bytes) {
- int lines = bytes / 16, i = 0;
- int j;
- const unsigned char* pMem = (const unsigned char*)addr;
- setlocale(LC_ALL, ".ACP");
- while(i < lines) {
- for(j = 0; j < 16; j++)
- printf("%-4x", pMem[i * 16 &#