当前位置:网站首页>Some Error in Visual Studio solution

Some Error in Visual Studio solution

2022-08-11 05:46:00 FussyCat

Migrating one recentlylinuxUp and down items towindows,A bunch of them come out when compilingerror,Picked a few for the record.

1、E1696无法打开源文件 unistd.h

无法打开源文件 <unistd.h>
无法打开 源 文件 “unistd.h”
在这里插入图片描述
【解决方案】
方案1:将<unistd.h>改为 “unistd.h”
结果:无效

方案2:视图-属性页-预处理器-预处理器定义,只保留“WIN32”,如图:
结果:无效
在这里插入图片描述
【方案3】Header file imports are isolated with macros

#ifdef _WIN32
#include <io.h>
#else
#include <unistd.h>
#endif

【结果】有效

2、E0020 未定义标识符 “getcwd”

在这里插入图片描述
【方案】先了解下 getcwd make description,从Microsoft官网上看,method is deprecated,改为_getcwd.
官网链接
在这里插入图片描述
【方案】Isolated with macro,重定义

#ifdef _WIN32
#define getcwd _getcwd
#endif

3、E0020 未定义标识符 “strcasecmp”

在这里插入图片描述
【方案】Isolated with macro,重定义

#ifdef _WIN32
#define strcasecmp _stricmp
#define strncasecmp _strnicmp
#endif

4、E0020 未定义标识符 “F_OK”

在这里插入图片描述
【方案】Direct macro definition assignment0

#define F_OK 0

5、E0135 namespace “std” 没有成员 “cerr”

在这里插入图片描述
【方案】24行注释掉/删除

6、E0135 namespace “std” 没有成员 “string_view”

在这里插入图片描述
【方案】查一下string_view的使用说明,是c++17的特性,编译依赖c++17即可.
官网链接
在这里插入图片描述
在这里插入图片描述

7、C2065 “ssize_t”: 未声明的标识符

在这里插入图片描述
【方案】宏隔离,重定义
#ifdef _WIN32
#define ssize_t size_t;
#endif

原网站

版权声明
本文为[FussyCat]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/223/202208110512506313.html