国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(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ù)報錯問題?的評論 (共 條)

分享到微博請遵守國家法律
萍乡市| 娄烦县| 建水县| 滨海县| 大新县| 涿鹿县| 阿克陶县| 来宾市| 东乌珠穆沁旗| 中牟县| 乌鲁木齐市| 秀山| 绥德县| 琼海市| 吉木乃县| 锡林郭勒盟| 沙河市| 黎城县| 峨眉山市| 枞阳县| 常山县| 鹤岗市| 江源县| 兰州市| 武平县| 甘泉县| 天全县| 通化县| 富顺县| 屏边| 通江县| 翁牛特旗| 昭通市| 长岭县| 邵阳市| 舒城县| 北辰区| 阜宁县| 朔州市| 萍乡市| 柳河县|