五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

常見報錯:如何解決 vs 編譯器scanf函數(shù)報錯問題?

2022-04-18 17:01 作者:C語言編程__Plus  | 我要投稿

問題來源

當我們使用vs編譯器編譯c語言代碼,并需要用到一些非常常用的庫函數(shù)的時候(如scanf)

vs編譯器通常會報出如下錯誤:


有的時候即便報錯了,程序也可以正常運行;

但有的時候就會同圖中一樣,程序無法運行;

出現(xiàn)這個錯誤的原因是vs編譯器認為這些庫函數(shù)是“不安全的”(我可真謝謝你,擔duo心guan那xian么shi多,微軟)

解決方法

解決這個報錯問題的方法有兩種

1.使用_S下標

如圖所示,我們可以在庫函數(shù)后面加一個_s,這時候vs就會把它認為是“安全的函數(shù)”,程序就可以正常運行了


方法一的致命缺點:

但是這么做有一個非常大的弊端——該代碼只能在vs編譯器里運行

如圖,如果我們將這一串帶_S的代碼復制到**devc++**這款編譯器里面

devc++編譯器會報錯,無法運行這串代碼


同樣的,如果你需要在mooc、??途W(wǎng)或者其他刷題網(wǎng)站上填寫代碼的時候

系統(tǒng)也無法運行這種帶了_s的c語言代碼

這時候代碼的“可移植性” (即通用性)就變差了!

這時候就需要我們的解決方法2了

2.使用防報錯語句

只需要在這個源文件的第一行添加這樣一串代碼

#define _CRT_SECURE_NO_WARNINGS 1

這串代碼的作用就是屏蔽掉vs編譯器對函數(shù)危險性的排查報錯

如圖所示,我們的代碼就能正常運行了


這樣操作,即便是將這一行防報錯代碼移植到另外一個編譯器里,這串代碼仍然能正常運行

而且有的時候即便加上_s,還是會出現(xiàn)一些和scanf無關的奇怪報錯

使用方法二就能解決這個問題,這里建議大家還是使用方法二啦!


方法二的缺點?

你可能會說,那我豈不是每次寫代碼之前都需要打上這么一個define語句,那樣也太麻煩了吧!

再說了,我也背不下來?。?/p>

別急,下面我就會告訴你怎么讓vs編譯器每次創(chuàng)建源文件的時候自動帶上這么一串代碼

如何在vs編譯器里加上默認語句

這里我們需要用到另外一款同樣很經(jīng)典的軟件——Notepad++


安裝完成后,我們點擊左上角的 文件

打開如下路徑里,箭頭所指的new++file文件


vs編譯器默認安裝路徑是c盤

如果你的vs編譯器不在c盤,可以通過右鍵桌面vs編譯器的快捷方式,打開文件所在的位置,找到你vs編譯器的安裝路徑


打開以后是空白的

我們只需要講這行define語句加入這個文件,ctrl+s保存

由于vs編譯器處于c盤,修改這個文件需要申請管理員權限,點擊同意即可!

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

這時候你創(chuàng)建的新的源文件,就會默認帶上這串代碼啦!

由于<stdio.h>這個頭文件實在是太常用了,所以我把它也加入了這個文件里。

如果你愿意,也可以把int main()加入這個文件,方法同上


這樣就不用每次創(chuàng)建新的源文件的時候自己手打啦!

一勞永逸!

-----------------------------------

寫在最后:另外,對于準備學習C/C++編程的小伙伴,如果你想更好的提升你的編程核心能力(內(nèi)功)不妨從現(xiàn)在開始!

微信公眾號:C語言編程學習基地

C語言零基礎入門教程(83集全)

整理分享(多年學習的源碼、項目實戰(zhàn)視頻、項目筆記,基礎入門教程)

歡迎轉(zhuǎn)行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!

編程學習書籍分享:

粉絲編程交流:


常見報錯:如何解決 vs 編譯器scanf函數(shù)報錯問題?的評論 (共 條)

分享到微博請遵守國家法律
许昌县| 伊通| 成安县| 娄烦县| 介休市| 扎赉特旗| 江油市| 长顺县| 普宁市| 伊川县| 永修县| 丰原市| 钟山县| 郑州市| 丹阳市| 兴国县| 郸城县| 乌拉特前旗| 隆安县| 林州市| 赤峰市| 准格尔旗| 比如县| 西华县| 泾阳县| 霞浦县| 宝清县| 广宁县| 阳泉市| 鹿邑县| 社会| 兰溪市| 河西区| 咸宁市| 巴马| 宜丰县| 容城县| 嘉禾县| 泾阳县| 奉节县| 富平县|