了解C中的fgets()函数

Aakarsh MJ

我一直在研究scanf()-将光标移到下一行,因此很好奇fgets是否执行相同的操作,但是我得到的输出对我来说没有意义。请帮助我了解它

代码 -

main()
{
char name[30] , name2[20];

scanf("%s" , name) ;
printf("%s" , name) ;
fgets(name2 , 30 , stdin) ;
printf("%s" , name2) ;

return 0 ;
}

输出-在此处输入图像描述

在第一行中,我输入的是Premier,它在第二行中提供了Premier的输出,但第二次不要求我输入,请说明fgets()是否还将光标移至第二行

感谢帮助!!!

让-巴蒂斯特·尤涅斯

第一个scanf不消耗行尾,只消耗一个字符串;因此调用fgets读取一个空行。

切勿混搭scanffgets否则会有问题。scanf是格式化输入,而fgets仅仅是原始输入。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章