c++ - 无法编译项目,缺少 io.h 文件

标签 c++ compiler-construction compact-framework include

我无法为使用 Windows Mobile(基于 Windows CE)操作系统的移动设备编译 C++ 项目,Visual Studio 中的 Visual C++ 编译器失败:

Error   1   fatal error C1083: Cannot open include file: 'io.h'

编辑
我正在尝试编译 SQLite 合并,shell.c 文件包含对此 io.h 的调用,但文件中缺少 io.h。

我用谷歌搜索但找不到如何获取此 .h 文件。

有人能指出我正确的方向吗?

最佳答案

io.h 文件在用于基于 Windows CE 的系统(如 Windows Mobile)的 SDK 中可用。 事实上,io.h header 从未成为 ISO C 或 C++ 标准的一部分。它定义属于 POSIX compatibility layer 的特征在 Windows NT 上,但不是 Windows CE .

由于 Windows CE 上缺少 POSIX 功能,我开发了一个小型实用程序库 WCELIBCEX . It does include io.h但是一个非常小的版本,对于 SQLite 来说可能是不够的。但是,正如 ctacke 提到的,您应该使用 SQLite port for Windows CE因为原始版本的 SQLite 不能为这个平台编译。

附注请注意,您的问题没有明确指定您正在为 Windows Mobile 构建。如果没有发现标记中提到的 .NET Compact Framework,那么整个问题都是模棱两可的。

关于c++ - 无法编译项目,缺少 io.h 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2211030/

相关文章:

c++ - 在 SHA256 哈希函数中使用的 Setw 和 setfill

c++ - 隐式const/nonconst运算符bool

c++ - opengl 读取.3ds 文件?

java - 为什么泛型类和方法声明中不能使用通配符?

c - Intel 64 ISA 中类型转换的说明是什么

python - Python 编译器是否有可能优化掉一些整数运算?

.net - 如何强制验证 Compact Framework 中的表单/控件?

c# - windows mobile 6.5 wceload.exe - 如何设置目标安装目录?

c++ - 如何返回对在方法内创建的对象的引用

在 Compact Framework 中的 DataGrid 中选择整行而不是单元格