C++ GNU C+中的内联汇编+;编译程序

C++ GNU C+中的内联汇编+;编译程序,c++,C++,以下内联汇编代码在我的系统上不起作用。那代码有什么问题 如果我使用asm而不是\uu asm\uuu,那么它工作正常 #include <stdio.h> int main() { float arg1, arg2, div ; printf( "Enter two numbers : " ); scanf( "%f%f", &arg1, &arg2 ); /* Perform floating Division */

以下内联汇编代码在我的系统上不起作用。那代码有什么问题

如果我使用
asm
而不是
\uu asm\uuu
,那么它工作正常

#include <stdio.h>

int main() {

    float arg1, arg2, div ;

    printf( "Enter two numbers : " );
    scanf( "%f%f", &arg1, &arg2 );

    /* Perform floating Division */


    __asm__ ( "fld %2;"
              "fld %1;"
              "fdiv;"
              "fstp %0;" : "=g" (div) : "g" (arg1), "g" (arg2) ) ;

    printf( "%f / %f = %f\n", arg1, arg2, div );

    return 0 ;
}
#包括
int main(){
浮动arg1、arg2、div;
printf(“输入两个数字:”);
scanf(“%f%f”、&arg1和&arg2);
/*执行浮动除法*/
__asm_u u_;(“fld%2;”
“fld%1;”
“fdiv;”
“fstp%0;”:“=g”(div):“g”(arg1),“g”(arg2));
printf(“%f/%f=%f\n”,arg1,arg2,div);
返回0;
}

源文件名是以
.c
结尾还是以
.cpp
结尾?换句话说,你是用C或C++ C++的源文件名来编译的吗?用cpp.jp编译器编译它,它在C、C++ +4.1和C++ 11编译模式中编译好。您实际收到的错误消息是什么?您选择了哪些编译器选项<代码> ASM是ISOC++中的保留关键字,而不是ISOC、<代码>如果你使用
-pedantic
选项,你会得到你应得的——没有人喜欢学究!。“不起作用”不是对任何问题的恰当描述。它能做什么,你期望什么?