保护模式和实地址模式下与 C/C++ 链接的深入解析
1. 保护模式下与 C/C++ 链接
在保护模式下进行 C/C++ 与汇编语言的集成编程时,有诸多要点需要注意。
1.1 Visual Studio 项目属性设置
若使用 Visual Studio 构建集成 C++ 和汇编语言且调用 Irvine32 库的程序,需更改一些项目设置。以 Multiplication_Table 程序为例,具体操作步骤如下:
1. 从“项目”菜单中选择“属性”。
2. 在窗口左侧的“配置属性”条目下,选择“链接器”。
3. 在右侧面板的“附加库目录”条目中输入 c:\Irvine 。
4. 点击“确定”关闭“公共属性页”窗口。
设置完成后,Visual Studio 就能找到 Irvine32 库。
1.2 调用 C 库函数
C 语言有标准化的函数集合,即标准 C 库,这些函数同样适用于 C++ 程序以及与之关联的汇编语言模块。汇编语言模块调用每个 C 函数时,必须包含其原型。通常可通过 C++ 编译器提供的帮助系统查找 C 函数原型,并将其转换为汇编语言原型后再在程序中调用。
例如, printf 函数在 C/C++ 语言中的原型为:
int printf(
const char *format [, argument]...
);
在汇编语言中的等效原型为:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



