可是发现
gets的话,要回车两次才能输入,而且还有溢出的漏洞存在
fgets的话,会保存回车符,这也不是我想要的
scanf的话,遇到空格就结束了
请大家推荐一个比较好的字符串输入函数把!
11 个解决方案
#1
还是规定文件名没有空格比较好
#2
请大家推荐一个比较好的字符串输入函数把!
=================
晕,那楼主自己重新写一个啊~~
=================
晕,那楼主自己重新写一个啊~~
#3
LS的意思是用getchar接受输入,然后剔除非字符,非数字,非合法符号的输入,最后指定回车为结束符?
这个好像麻烦了一点啊
这个好像麻烦了一点啊
#4
自己写个吧
#5
用fgets,你手动删掉最后一个回车符不得了。。
#6
1.改成用命令行参数,大多数程序都会这么处理.
2.一般输入都有最大限制,设一个比较大的buffer.
3.自己写一个.
2.一般输入都有最大限制,设一个比较大的buffer.
3.自己写一个.
#7
不清楚
#8
哈哈
#9
gets();不用敲两次回车的.
fgets();虽然是接收了换行符,但是可以放fp回溯一个字节或两个字节.
恩.LZ自己写个函数得了.个人专用呵呵
fgets();虽然是接收了换行符,但是可以放fp回溯一个字节或两个字节.
恩.LZ自己写个函数得了.个人专用呵呵
#10
getchar()不行吗?把所有的输入保存了,然后自己去处理阿
#11
用fgets
那就释放缓存
那就释放缓存
#1
还是规定文件名没有空格比较好
#2
请大家推荐一个比较好的字符串输入函数把!
=================
晕,那楼主自己重新写一个啊~~
=================
晕,那楼主自己重新写一个啊~~
#3
LS的意思是用getchar接受输入,然后剔除非字符,非数字,非合法符号的输入,最后指定回车为结束符?
这个好像麻烦了一点啊
这个好像麻烦了一点啊
#4
自己写个吧
#5
用fgets,你手动删掉最后一个回车符不得了。。
#6
1.改成用命令行参数,大多数程序都会这么处理.
2.一般输入都有最大限制,设一个比较大的buffer.
3.自己写一个.
2.一般输入都有最大限制,设一个比较大的buffer.
3.自己写一个.
#7
不清楚
#8
哈哈
#9
gets();不用敲两次回车的.
fgets();虽然是接收了换行符,但是可以放fp回溯一个字节或两个字节.
恩.LZ自己写个函数得了.个人专用呵呵
fgets();虽然是接收了换行符,但是可以放fp回溯一个字节或两个字节.
恩.LZ自己写个函数得了.个人专用呵呵
#10
getchar()不行吗?把所有的输入保存了,然后自己去处理阿
#11
用fgets
那就释放缓存
那就释放缓存