C语言求助
今天遍了一个很简单的C语言程序中间遇到点小麻烦,下面是代码
main()
{
int i,s;
char a[80]={0},b[80]={0},c[40]={0};
printf("请输入字符串\n");
gets(a);
s=strlen(a);
printf("%d",s);
puts(a);
for(i=0;2*i<=s;i++)
b[i]=a[2*i];
for(i=1;2*i-1<=s;i++)
c[i-1]=a[2*i-1];
//strcat(b,c);
puts(b);
printf("\n");
puts(c);
printf("\n");
printf("%c,%c,%c",c[3],c[4],c[5]);
}
问题是 如果三个字符数组不进行初始化的话结果输出时字符后面会出现乱码,初始化全为0就没事 我想知道是什么原因引起的
求大神帮助。
[解决办法]
puts(a);//输出时要到终止字符时结束,初始化{0}的作用是把整个字符数组全部置为终止字符,这样,就能够正常输出了,而不初始化,输出的时候,并不一定是你想要的地方终止
[解决办法]
不是随机值,只是不确定值