1

このコードは大学の教授から入手したので、コードが機能することはかなり確信していますが、私の場合、出力は常に 0 です。

Windows と仮想 Ubuntu マシンで試してみましたが、それでも同じでした。

私はmingwを使ってコンパイルしています:

gcc test.c test.s

これはCコードです:

#include <stdio.h>

int func(int a, int b);

int main()
{   
    int a, b;
    scanf("%d %d", &a, &b);
    printf("%d\n", func(a, b));
    return 0;
}

そして、これはアセンブリです:

.intel_syntax noprefix

.text

    .globl _func

_func:

    enter 0,0

    mov eax, edi
    add eax, esi
    leave
    ret

入力 2 と 3 の場合、5 を出力する必要がありますが、常に 0 です。

4

1 に答える 1