網(wǎng)站首頁 編程語言 正文
前言
前幾天寫新項目需要用到程序所在絕對路徑的時候,發(fā)現(xiàn)網(wǎng)上居然一點相關(guān)分享都沒有。
:_pgmptr
翻箱倒柜找出了幾本教程,發(fā)現(xiàn)了一個叫_pgmptr
的東西。
進去看了一下,在stdlib.h
里拓展到了函數(shù)__p__pgmptr()
,函數(shù)原型:
復制代碼 代碼如下:
_CRT_INSECURE_DEPRECATE_GLOBALS(_get_pgmptr ) _ACRTIMP char** __cdecl __p__pgmptr (void);
返回值為char**
,也就是普通的字符串數(shù)組。
:VS安全檢查
趕緊放到項目里試一試,結(jié)果卻報錯了。
定睛一看,原來是Visual Studio的安全檢查不讓這個“可能”越界的函數(shù)過編譯。一般來說,改用它提示的安全函數(shù)就可以過,可這次居然沒有安全函數(shù)...
于是乎,要么找別的函數(shù), 要么繞過安全檢查。我選擇了后者,根據(jù)錯誤提示定義安全宏:
#define _CRT_SECURE_NO_WARNINGS
別急著拷,先往下看...
定義了安全宏之后,還是報了同樣的錯...不知道你們會不會,反正我是這樣
那么,要繞過安全檢查,就得另辟蹊徑了。
在解決方案資源管理器中右鍵項目,單擊屬性,進入下方頁面
找到C/C++ -> SDL檢查 -> 否(/sdl-)-> 確定
這樣,安全檢查就被繞過了。
總結(jié)
1.程序絕對路徑獲取:_pgmptr
2.VS安全檢查:項目屬性 -> C/C++ -> SDL檢查 -> 否(/sdl-)
原文鏈接:https://www.cnblogs.com/yuito/p/17030233.html
相關(guān)推薦
- 2022-05-04 python設(shè)計模式之單例模式你了解多少_python
- 2023-02-03 VB十七種可用一行代碼完成判斷的技巧代碼_vb
- 2022-10-17 android中px、sp與dp之間進行轉(zhuǎn)換詳解_Android
- 2022-04-25 C#使用Npoi導出Excel并合并行列_C#教程
- 2022-08-17 Android?Flutter表格組件Table的使用詳解_Android
- 2022-05-01 淺談Redis哨兵模式高可用解決方案_Redis
- 2021-12-03 Android消息機制Handler深入理解_Android
- 2022-07-06 python?pandas中的agg函數(shù)用法_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支