首页 > 其他 > 详细

scanf与scanf_s的区别

时间:2020-02-16 19:45:37      阅读:75      评论:0      收藏:0      [点我收藏+]

1.scanf()不会检查输入边界,可能造成数据溢出。scanf_s()会进行边界检查。

_s”后缀的函数是为了让原版函数更安全,传入一个和参数有关的大小值,避免引用到不存在的元素,防止hacker利用原版的不安全性(漏洞)黑掉系统。

2.scanf的调用格式为:scanf("<格式化字符串>",<地址表>)。

 scanf_s()用于读取字符串时,必须提供一个数字以表明最多读取多少位字符,以防止溢出。

 scanf_s("%s" , buffer,128);//此处必须加上128,表示最多可以读取128位,不然运行会报错。

 

scanf与scanf_s的区别

原文:https://www.cnblogs.com/syq816/p/12317909.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!