欢迎光临散文网 会员登陆 & 注册

解决MSVC编译报错:“C4996 'xxxx': This function or variable may be unsaf

2023-04-14 20:45 作者:TheWhiteDog9487  | 我要投稿

首先,啥情况下会出现这个错误?

让我们来想象一个场景:
你正在做一个程序,调用一个远程的API。为了安全起见,API认证用的密钥不能硬编码于代码中,于是你决定使用环境变量。现在要做的就是从系统中读取这个存储着密钥的环境变量。

过程十分正常。让我们编译、链接、运行。问题轻松秒....诶?

这,是个什么情况?

不多说,直接上微软的文档:

首选方案应当是使用这些函数的更安全版本。但是,对于编程新手(比如我)来说,那些更安全的参数列表一看就晕了,这可不是啥好事。所以就来看看,临时过渡方案。

这个方案相对于其他的优点是局部生效(有效范围只有下一行,一行而已),比其他全局解决方案安全很多,不至于(有可能的)因小失大。

来试用一下:

那当然是轻松秒杀。

解决MSVC编译报错:“C4996 'xxxx': This function or variable may be unsaf的评论 (共 条)

分享到微博请遵守国家法律