【发布时间】:2023-03-23 22:41:01
【问题描述】:
所以,我有一个用例,我需要强制交叉编译到 Windows 的 C 程序以二进制格式读取标准输入。这对 Windows 编译器很有用,但不幸的是我正在使用 MinGW 编译这个程序,所以我无法访问设置标准输入的模式,因为这是一个 pre-MSDOS、pre-UNIX 约定。在 GCC 中编译此代码的同时,我将如何强制这种情况发生?有什么想法吗?
错误陈述如下:
__setmode(__fileno(stdin), O_BINARY);
__setmode(__fileno(stdout), O_BINARY);
【问题讨论】:
-
它应该是
_setmode(_fileno(stdin), _O_BINARY);(只有一个下划线)并确保您已包含所有必需的标题。 -
包含的标题有哪些?我认为问题在于我没有所需的标题。