社区
C语言
帖子详情
fgets的问题
zxhong
2006-12-20 03:43:56
多个fgets接收stdin
第一个fgets输入多的字符会自动到第二个fgets,导致第二个fgets没有等待输入就过去了
这个问题如何解决?象这种多个接收stdin流方式如何更好解决?
...全文
218
11
打赏
收藏
fgets的问题
多个fgets接收stdin 第一个fgets输入多的字符会自动到第二个fgets,导致第二个fgets没有等待输入就过去了 这个问题如何解决?象这种多个接收stdin流方式如何更好解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
argenCHN
2006-12-20
打赏
举报
回复
up
zhenhaojia
2006-12-20
打赏
举报
回复
开足够大的buffer, 比最长的一行还大。
chary8088
2006-12-20
打赏
举报
回复
用getline()
redstorm_fyy
2006-12-20
打赏
举报
回复
string buf;
cin>>buf;
zhgc1983
2006-12-20
打赏
举报
回复
line 1:
aaaaaaaaaaaaa
aaaaaaaaa
line 2:
bbbbbbbbbbbb
bbbbbbbbb
line 3:
cccccccccccccccccc
ccccccccc
这样的效果不行吗?
zhgc1983
2006-12-20
打赏
举报
回复
很好啊,你是想怎么样的效果呢!
goodluckyxl
2006-12-20
打赏
举报
回复
如果定义的fgets的中接收缓冲大小比你输入间隔大的情况
那使用fflush是可以的
如果定义的接收缓冲只有10,但是一次输入2串命令每串都比10大
那就要用别的处理分割符号不是制表 空格 换行等标准输入间隔符号时
那就对整个串逐一输入分析
zxhong
2006-12-20
打赏
举报
回复
楼上这种方法不行啊
cmail
2006-12-20
打赏
举报
回复
用完一个fgets后刷新一下缓冲区。
fflush(stdin);
这个不是标准库函数,所以移植性不好。
zxhong
2006-12-20
打赏
举报
回复
不一定非要用fgets,主要是为了实现接收多个stdin流,like:
please input 1:
用户输入1
please input 2:
用户输入2
please input 3:
用户输入3
。。。。。
ccccffff
2006-12-20
打赏
举报
回复
非要用fgets?
如何解决
fgets
读取popen内容阻塞的
问题
如何解决
fgets
读取popen内容阻塞的
问题
fgets
与fputs函数
fgets
函数详解
fgets
函数 从流中读一行或指定个字符, 原型是char *
fgets
(char *s, int n, FILE *stream); 从流中读取n-1个字符,除非读完一行,参数s是来接收字符串,如果成功则返回s的指针,否则返回NULL。...
fgets
_
fgets
_
Implementation of
fgets
file handling function in c.
c语言
fgets
fputs 读写文件
读字符串函数
fgets
函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为:
fgets
(字符数组名,n,文件指针)
fgets
.c
fgets
.c
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章