0
#include "stdio.h"
void fseek(void *, int, int);
main() {
FILE* f = fopen("myfile", "rb");
asm("push 2");
asm("push 0");
asm("push f");
asm("call fseek");
asm("add esp, 12");
}
GCC -masm =英特爾call.c無法調用FSEEK與內聯彙編
call.c:(.text+0x2c): undefined reference to `f'
call.c:(.text+0x31): undefined reference to `fseek'
我一直在嘗試使用AT/T語法,但得到了同樣的結果。
這第二個'asm'是不對的,因爲調用函數將痛毆至少調用者保存寄存器。 – gsg