C4996 'getcwd': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _getcwd. See online help for details.

错误原因

微软从2005开始不再支持POSIX命名的C语言函数

解决方案

方案一:将getcwd换成_getcwd[不建议]

将getcwd换成_getcwd

但是,_getcwd函数只能在vs上使用,其他平台无法使用,故修改之后的代码无法移植,不建议采取此方案

方案二:使用条件编译

#ifdef _POSIX_C_SOURCE
    getcwd(buff, iLen);
#else
    _getcwd(buff, iLen);
#endif

在支持POSIX的平台系统会采用getcwd,在不支持的POSIX的平台系统会采用_getcwd,可兼容其他平台

方案三:设置预处理器

右键  ->  属性  ->  配置属性  ->  C/C++  ->  预处理器  ->  预处理器定义  ->  输入_CRT_NONSTDC_NO_DEPRECATE

posted @   EricsT  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示