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])语句,这样只是输出汉字字符的前半段,显示在命令行的结果为一个问号。

你可能感兴趣的:(C语言)