好友
阅读权限25
听众
最后登录1970-1-1
|
董督秀
发表于 2024-5-12 16:26
200吾爱币
本帖最后由 董督秀 于 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
.model flat, stdcall ;;; 2
option casemap: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
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|