简单区别:
- scanf()不会检查输入边界,可能造成数据溢出。
- scanf_s()是scanf()的安全版本,会检查输入边界。
例如: str[5]
- scanf("%s",str),如果输入abcdefgh,则会使fgh溢出进入其他地方,造成程序错误。
- 而scanf_s("%s",str),则只会接收前5个输入,其后的都无效,避免了程序的漏洞。
注意:vs2017已经不再使用scanf()输入数据,只能用scanf_s,否则会报错
简单区别:
例如: str[5]
注意:vs2017已经不再使用scanf()输入数据,只能用scanf_s,否则会报错