我正在用C语言编写一个爱好项目,我想在DOSbox中运行它。我有一个64位系统,我正在使用gcc进行编译。
我正在使用stdlib.h
,stdio.h
,string.h
运行.exe
时出现错误 “此程序无法在DOS模式下运行”。 我已经环顾了一下它说了我需要使用一些特定的库来维护跨平台,那么我应该保留或不保留什么?我是新手,我应该使用批处理文件还是别的什么?
答案 0 :(得分:1)
DOS不是Windows。
DOS不支持几种特定于Windows的库和API。因此,为Windows编译的可执行文件不能与DOS一起使用。
您需要告诉编译器您要为 DOS编译。这也可以在Windows上完成。它被称为交叉编译。 我所知道的唯一能够针对DOS的编译器(仍然可用)是Borland C编译器(BCC)。 BCC适用于Windows和Linux。
TurlandC编译器也使用Borland C编译器。 有一些版本的Turbo C适用于DOSbox(因为这就是你正在使用的)。
话虽如此,除非有一个强大的约束迫使你为DOS编译(如学校/学院限制或你必须为一些非常旧的系统开发),我建议你转向更新更好的编译器视窗。