在Visual Studio中将C与程序集链接

我正在尝试将main.c程序与procedure.asm链接。 我有以下C程序和汇编程序。

main.c中

#include  #include  using namespace std; extern "C" { void ClearUsingIndex(int[], int); } static int Array[10] ={1, 2, 3, 4, 5, 6, 7, 8, 9, -1}; int main() { int size = 10; ClearUsingIndex( Array, size); system("pause"); return 0; } 

procedure.asm

 ; Listing generated by Microsoft (R) Optimizing Compiler Version 17.00.50727.1 TITLE c:\Users\GS\documents\visual studio 2012\Projects\ClearIndex\ClearIndex\procedure.cpp .686P .XMM include listing.inc .model flat INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES PUBLIC ?ClearUsingIndex@@YAXQAHH@Z ; ClearUsingIndex EXTRN __RTC_InitBase:PROC EXTRN __RTC_Shutdown:PROC ; COMDAT rtc$TMZ rtc$TMZ SEGMENT __RTC_Shutdown.rtc$TMZ DD FLAT:__RTC_Shutdown rtc$TMZ ENDS ; COMDAT rtc$IMZ rtc$IMZ SEGMENT __RTC_InitBase.rtc$IMZ DD FLAT:__RTC_InitBase rtc$IMZ ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; COMDAT ?ClearUsingIndex@@YAXQAHH@Z _TEXT SEGMENT _i$ = -8 ; size = 4 _Array$ = 8 ; size = 4 _size$ = 12 ; size = 4 ?ClearUsingIndex@@YAXQAHH@Z PROC ; ClearUsingIndex, COMDAT ; File c:\users\gs\documents\visual studio 2012\projects\clearindex\clearindex\procedure.cpp ; Line 2 push ebp mov ebp, esp sub esp, 204 ; 000000ccH push ebx push esi push edi lea edi, DWORD PTR [ebp-204] mov ecx, 51 ; 00000033H mov eax, -858993460 ; ccccccccH rep stosd ; Line 4 mov DWORD PTR _i$[ebp], 0 jmp SHORT $LN3@ClearUsing $LN2@ClearUsing: mov eax, DWORD PTR _i$[ebp] add eax, 1 mov DWORD PTR _i$[ebp], eax $LN3@ClearUsing: mov eax, DWORD PTR _i$[ebp] cmp eax, DWORD PTR _size$[ebp] jge SHORT $LN4@ClearUsing ; Line 5 mov eax, DWORD PTR _i$[ebp] mov ecx, DWORD PTR _Array$[ebp] mov DWORD PTR [ecx+eax*4], 0 jmp SHORT $LN2@ClearUsing $LN4@ClearUsing: ; Line 6 pop edi pop esi pop ebx mov esp, ebp pop ebp ret 0 ?ClearUsingIndex@@YAXQAHH@Z ENDP ; ClearUsingIndex _TEXT ENDS END 

我做了一些研究,我找到了以下来源并按照说明操作: 在Visual Studio .NET中使用程序集的指南

但是在编译汇编文件时出现以下错误。

 error A1017: missing source filename 

我谷歌的错误,但我尝试的所有方法似乎都没有用。