dos.h是什么类型的库(静态或动态)?

时间:2012-12-10 13:05:36

标签: c++ c dynamic static libraries

我正在为我的大学开展一个项目。其中一点是我们不允许使用非静态库。当我处理中断时,我想使用dos.h来避免使用程序集(setvect()而不是一堆流水线代码)来复杂化。

考虑使用库的部分的粗略翻译是: “...允许只使用独立于平台(硬件和操作系统)的标准(静态)C / C ++库。不允许使用系统主机或动态库(DLL)的特定库”

有人可以告诉我dos.h是哪种类型的库吗?

1 个答案:

答案 0 :(得分:6)

头文件*.h不是库,它只是一组定义和声明。

如果分配真正要求您两者使用硬件中断与操作系统无关,那么它就不一致,因为不同的操作系统定义了如何处理硬件中断的不同。

我怀疑你误解了这项任务,应该请你的导师澄清。

在回复评论时添加了

是的,编写一个小操作系统确实可以解释这种不一致性。如上所述,kernel32.dll可能提供您想要使用的一些服务(例如setvect())。如果没有操作系统,则没有可依赖的操作系统服务,您必须自己编写(我认为这是分配目的的一部分)。