C数组问题求助
数组怎么存放中文?中文占两个字节。怎么输出数组?跟普通字符一样就可以了 xieglt 发表于 2020-10-21 11:50
跟普通字符一样就可以了
#include<stdio.h>
int main()
{
int i;
char s={"hi"};
for(i=0;i<2;i++)
printf("%c",s);
return 0;
}
不行
#include<stdio.h>
int main()
{
int i;
char s={"神"};
for(i=0;i<2;i++)
printf("%c",s);
return 0;
} 本帖最后由 xieglt 于 2020-10-21 13:40 编辑
#include<stdio.h>
int main()
{
char s1[] = "Hello,world" ;
char s2[] = "春光灿烂猪八戒";
char s3 = "神";
printf("s1=%s\ns2=%s\ns3=%s\n",s1,s2,s3);
//汉字是两个字节,也可以这样输出
printf("%c%c\n",s3,s3);
return 0;
}
#include<stdio.h>
void main()
{
char *p,c = "只要我们努力,就一定能学好C语言"; // 15个汉字,多开辟一个单元空间,否则会出现“array bounds overflow”警告
int i;
p = c;
for(i =0; i < 32; i++) // 指针循环输出
{
printf("%c", *p++);
}
printf("\n");
for(i =0; i < 32; i++) // 数组循环输出
{
printf("%c", c);
}
printf("\n");
printf("%s", c); // 字符串输出
printf("\n");
}
页:
[1]