生活常识

当前位置/ 首页/ 生活常识/ 正文

gets函数和scanf区别(gets函数)

导读 大家好,我是小科,我来为大家解答以上问题。gets函数和scanf区别,gets函数很多人还不知道,现在让我们一起来看看吧!1、C语言里的 gets(...

大家好,我是小科,我来为大家解答以上问题。gets函数和scanf区别,gets函数很多人还不知道,现在让我们一起来看看吧!

1、C语言里的 gets(),scanf() 都不检查缓冲区是否会溢出。至于此“漏洞”有什么样的风险,我没有体会。自己写的程序,自己用,没有风险。

2、如果别人写的程序,含恶意代码,你也无可奈何,你不能叫别人用scanf()不用 gets()。

3、再说,

4、gets() 读取一行字符串,包括空白(空格,tab...)。

5、scanf("%s",....) 它没有 读取一行 的功能,遇到 空白 就不读下去了(它以空白为分隔符).

6、所以 scanf() 并不能代替 gets() 。

本文到此讲解完毕了,希望对大家有帮助。