我正在尝试使用Visual Studio 2015,这是我第一次上课。我已经使用了一些不同的教程并多次重新下载了visual studio,但我仍然遇到同样的问题。
顶部的注释(前两行)用红色加下划线,错误信息显示,"此声明没有存储类或类型说明符。" 当我开始搞乱Visual Studio但整个周末都没有找到解决方案时,我假设我在设置中弄乱了一些东西。有没有人看到这个或有任何想法可能会发生什么?
以下是我使用的示例代码的副本:
; AddTwo.asm - adds two 32 - bit integers.
; Chapter 3 example
.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword
.code
main proc
mov eax,5
add eax,6
invoke ExitProcess,0
main endp
end main
答案 0 :(得分:0)
将文件类型更改为.asm,例如example.asm。创建一个空项目并将.asm文件添加到项目中。在项目窗口中,右键单击.asm文件名,然后单击属性,然后添加以下自定义构建步骤:
debug build命令行:
ml /c /Zi /Fo$(OutDir)\example.obj example.asm
发布构建命令行:
ml /c /Fo$(OutDir)\example.obj example.asm
调试和发布构建输出文件:
$(OutDir)\example.obj
示例asm文件:
.586p
.model flat,c
.data ; initialized data
.data? ;uninitialized data
.stack 4096
.code
main proc near
mov eax,5
add eax,6
xor eax,eax
ret
main endp
end
注意 - 如果您使用的是Visual Studio 2015,则printf现在是包含文件的一部分,并且实际上是在C / C ++文件中内联的。这使得从asm调用printf成为问题。一种解决方案是使用C / C ++和asm文件创建一个项目,使用C / C ++文件生成printf。