C語言中,scanf與scanf_s的簡單區別


scanf()不會檢查輸入邊界,可能造成數據溢出,scanf_s()會進行邊界檢查。

如name[5],

scanf("%s",name),如果輸入abcdefgh,則會使得fgh溢出進入其他地方,造成程序錯誤,

容易被黑客利用;而scanf_s("%s",name),則會只會接收前5個輸入,其后的無效,避免了程序的漏洞。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM