C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查詳解
前言
前幾天寫新項(xiàng)目需要用到程序所在絕對(duì)路徑的時(shí)候,發(fā)現(xiàn)網(wǎng)上居然一點(diǎn)相關(guān)分享都沒(méi)有。
:_pgmptr
翻箱倒柜找出了幾本教程,發(fā)現(xiàn)了一個(gè)叫_pgmptr的東西。

進(jìn)去看了一下,在stdlib.h里拓展到了函數(shù)__p__pgmptr(),函數(shù)原型:
_CRT_INSECURE_DEPRECATE_GLOBALS(_get_pgmptr ) _ACRTIMP char** __cdecl __p__pgmptr (void);返回值為char**,也就是普通的字符串?dāng)?shù)組。
:VS安全檢查
趕緊放到項(xiàng)目里試一試,結(jié)果卻報(bào)錯(cuò)了。

定睛一看,原來(lái)是Visual Studio的安全檢查不讓這個(gè)“可能”越界的函數(shù)過(guò)編譯。一般來(lái)說(shuō),改用它提示的安全函數(shù)就可以過(guò),可這次居然沒(méi)有安全函數(shù)...
于是乎,要么找別的函數(shù), 要么繞過(guò)安全檢查。我選擇了后者,根據(jù)錯(cuò)誤提示定義安全宏:
#define _CRT_SECURE_NO_WARNINGS
別急著拷,先往下看...

定義了安全宏之后,還是報(bào)了同樣的錯(cuò)...不知道你們會(huì)不會(huì),反正我是這樣
那么,要繞過(guò)安全檢查,就得另辟蹊徑了。

在解決方案資源管理器中右鍵項(xiàng)目,單擊屬性,進(jìn)入下方頁(yè)面

找到C/C++ -> SDL檢查 -> 否(/sdl-)-> 確定
這樣,安全檢查就被繞過(guò)了。
總結(jié)
1.程序絕對(duì)路徑獲取:_pgmptr
2.VS安全檢查:項(xiàng)目屬性 -> C/C++ -> SDL檢查 -> 否(/sdl-)
到此這篇關(guān)于C++可執(zhí)行文件絕對(duì)路徑值與VS安全檢查的文章就介紹到這了,更多相關(guān)C++可執(zhí)行文件絕對(duì)路徑值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++中std::conditional的使用說(shuō)明
這篇文章主要介紹了C++中std::conditional的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
C語(yǔ)言?超詳細(xì)梳理總結(jié)動(dòng)態(tài)內(nèi)存管理
動(dòng)態(tài)內(nèi)存是相對(duì)靜態(tài)內(nèi)存而言的。所謂動(dòng)態(tài)和靜態(tài)就是指內(nèi)存的分配方式。動(dòng)態(tài)內(nèi)存是指在堆上分配的內(nèi)存,而靜態(tài)內(nèi)存是指在棧上分配的內(nèi)存,本文帶你深入探究C語(yǔ)言中動(dòng)態(tài)內(nèi)存的管理2022-03-03
Linux系統(tǒng)中C語(yǔ)言編程創(chuàng)建函數(shù)fork()執(zhí)行解析
最近在看進(jìn)程間的通信,看到了fork()函數(shù),雖然以前用過(guò),這次經(jīng)過(guò)思考加深了理解。現(xiàn)總結(jié)如下2013-04-04
C 語(yǔ)言基礎(chǔ)----詳解C中的運(yùn)算符
這篇文章主要介紹了C語(yǔ)言中的運(yùn)算符,文中講解非常詳細(xì),適合初學(xué)小白進(jìn)行學(xué)習(xí),想入門C語(yǔ)言的朋友不妨了解下2020-06-06
C++順序表實(shí)現(xiàn)圖書管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++順序表實(shí)現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10

