怎么运行后答案后边会出现一行汉字呢?

来源:百度知道 编辑:UC知道 时间:2024/06/11 15:36:03
#include<stdio.h>
#include<ctype.h>
void main()
{
char str[50],*sp;
int m;
sp=&str[0];
for(m=0;m<50;m++)
{
str[m]=getchar();
if(str[m]=='\n')
break;
}
str[m]='\n';
*sp=str[0];
while(*sp)
putchar(*sp++);

}

我觉得是
str 分配到了50个空间
但是没用完
但是指针还继续往后扫描
于是空的没有赋值的空间有以前保留的或者什么时候弄的数据
翻译出来就 是那些 乱七八槽的汉字
我这出了 烫
不知道是不是这样