我有这样的代码:
int main()
{
char input_string[MAX_LENGTH];
char output_string[MAX_LENGTH];
cin.getline(input_string,80,'\n');
asm
(
"lea eax,input_string\n"
"mov esi,eax\n"
"lea eax,output_string\n"
"mov edi,eax\n"
// SOME CODE
我得到了错误:
/usr/bin/ld: /tmp/ccuMmjjG.o: in function `main':
lr4_comments.cpp:(.text+0x110): undefined reference to `input_string'
/usr/bin/ld: lr4_comments.cpp:(.text+0x118): undefined reference to `output_string'
collect2: error: ld returned 1 exit status
我使用:
g++ -masm=intel -m32 -o main main.cpp
采用Intel语法正确执行此操作的方式是什么? 附言添加“ .intel_syntax;”什么也不做,只会增加额外的错误。