在vs2019中使用.asm编译32位程序失败
本帖最后由 董督秀 于 2024-5-12 16:37 编辑1.我创建了一个控制台项目,其中.cpp文件的内容为:
//.cpp
#include <iostream>
extern "C" int function();
int main() {
std::cout << function();
std::cin.get();
}
2.我在项目设置,生成依赖项->生成自定义,里勾选了MASM编译器
3.我添加了一个.asm文件,其内容如下,并且我将.asm文件设置成Microsoft Macro Assembler:
;.asm 如果切换成x64 Release 模式,则把这三句注释掉即可编译通过
.386;;; 1
.modelflat, stdcall;;; 2
optioncasemap:none;;; 3
.code
function proc
mov eax, 50
ret
function endp
end
x86 Release 模式编译无法通过,提示:无法解析的外部符号_function
注意:
1.这要换做是x64编译,这样设置,一般情况是能编译通过的
2.在x86下虽然可以直接使用__asm{...};扩展关键字,但我想在.asm里写汇编
该如何解决这个问题?
问题代码:
https://f.ws59.cn/f/e3cu5llx21c function proc
改为
function proc C
页:
[1]