C语言输出单个汉字字符
1 #include "stdio.h" 2 #include "windows.h" 3 4 int main() 5 { 6 char sText[20] = { "多字节字符串!OK!" }; 7 DWORD dwNum = MultiByteToWideChar(CP_ACP, 0, sText, -1, NULL, 0); 8 printf("dwNum = %d", dwNum); 9 for (int i = 0; i < 20; i=i+2) 10 { 11 printf("%c%c", sText[i],sText[i+1]); 12 printf("%d", i); 13 } 14 system("pause"); 15 return 0; 16 }
char是单字节类型,占8个二进制位,中文字符占两个字节,输出字符串中的单个汉字字符时,不可以直接使用printf("%c",sText[i])语句,这样只是输出汉字字符的前半段,显示在命令行的结果为一个问号。