

scanf函數(shù)在VS中報錯的主要原因是 scanf被認為不安全而被編譯器默認設(shè)置為禁用。
那么如何解決這個問題呢
法一:
僅將函數(shù)scanf替換為scanf_s即可,其他語法不變。但scanf_s函數(shù)并不是C語言函數(shù)庫里的標(biāo)準(zhǔn)函數(shù),而是VS編譯器所提供的函數(shù),所以并不推薦用這種方法來解決問題。
法二:
在代碼的最頂端輸入#define??_CRT_SECURE_NO_WARNINGS
(!!!注意一定是最頂端不然依舊會報錯)
錯誤示例:

![]()
正確示例:


這樣就解決了,但是這個辦法依然有缺陷,就是當(dāng)我們每一次新建一個程序或者項目時,就要重新去在代碼的最頂端輸入#define??_CRT_SECURE_NO_WARNINGS。這顯然還不是我們想要的解決方案。
法三:
在VS的界面中,最頂端找到項目這一欄,點擊屬性

找到C/C++這一欄,選擇預(yù)處理器,打開預(yù)處理器定義這一欄最右邊的小三角,選擇編輯。

在最上方的白框中輸入_CRT_SECURE_NO_WARNINGS,點擊確定,然后點擊應(yīng)用(切記是應(yīng)用而非確定),但這種辦法依舊不能一勞永逸(惱)。

法四:
打開文件資源管理器,找到visual studio 的安裝路徑,然后在該路徑下搜索 “newc++file.cpp” (或可直接搜索,路徑越細查找速度越快)

找到這個文件后復(fù)制粘貼到桌面上
輸入#define? _CRT_SECURE_NO_WARNINGS,后保存退出

將文件拖回原來的位置,點擊替換目標(biāo)中的文件,之后點擊確認就好(如果直接在原位置更改保存的話會要管理員權(quán)限導(dǎo)致無法保存)
此后我們在VS中創(chuàng)建新的源C/CPP文件時會在開頭自動輸入
#define? ?_CRT_SECURE_NO_WARNINGS,一勞永逸解決問題。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享名稱:解決VS中scanf()函數(shù)報錯問題的四種方案(詳細)-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://chinadenli.net/article18/ddhogp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、微信小程序、網(wǎng)站改版、營銷型網(wǎng)站建設(shè)、Google、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)