
c语言里用getchar输入字符串的字符长度问题
voidf1(charst1[],charst2[]){inti=0;getchar();while((st1[i++]=getchar())!='\n');gets(s...
void f1(char st1[],char st2[])
{
int i=0;
getchar();
while((st1[i++]=getchar())!='\n');
gets(st2);
}
老师说用getchar输入字符串还需要加个'/0'
= = 这个要怎么加.. 展开
{
int i=0;
getchar();
while((st1[i++]=getchar())!='\n');
gets(st2);
}
老师说用getchar输入字符串还需要加个'/0'
= = 这个要怎么加.. 展开
3个回答
展开全部
我没怎么看懂你的程序 我猜测你是要实现用getchar()实现对st1的赋值操作吧,如果是的话只要在while后加一句st1[i]='\0';就可使实现对st1的正确输出了。
void f1(char st1[],char st2[])
{
int i=0;
getchar();
while((st1[i++]=getchar())!='\n');
st1[i]='\0';
gets(st2);
}
void f1(char st1[],char st2[])
{
int i=0;
getchar();
while((st1[i++]=getchar())!='\n');
st1[i]='\0';
gets(st2);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
他意思是 gets()函数或者sacnf函数用完后要加个getchar()来接收回车字符,以为那两个函数是不处理回车字符的,所以要自行处理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用你的字符变量+上/0嘛,这是占位符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询