首页 > 代码库 > 字符串输出问题

字符串输出问题

 1 #include<stdio.h>
 2 #include<string.h>
 3 #define N 20
 4 int main()
 5 {
 6     char str[N];int i=0,j=0;
 7     gets(str);
 8     while(str[i]!=\0) j=i++;
 9     for(i=0;i<=j;i++)    printf("%c!",str[i]);
10 /* 假如输入的是中文,并想要输出中文,这里%c后面不能跟英式符号,不然只能显示"??",中文的符号可以显示中文,但输出的中文不对 */
11     printf("\n");
12     return 0;
13 }
14 /* 我原意是想要输入一串中文,输出时用感叹符号分隔每个字后显示出来 */
15 /* 结果发现%c后面加上英式感叹号后怎么也不能输出中文 */

我想应该是编码的问题,输出的结果肯定是asc码表上对应的值。暂时先记录下来。

字符串输出问题