我无法理解 fprintf 的问题。也许您可以找到解决此问题的方法。
你看,当我调用 fprintf 时,它开始无限循环,没有充分的理由。我不知道这里发生了什么,所以也许你可以帮帮我。
String_int:
db 91; "["
db 37; "%"
db 115;"i"
db 93; "]"
db 0; "end_string"
w_IN_ASCII:
db 119; "w"
db 0; "end_string"
<SOME CODE>
mov rdi, FILE_LOCATION;
mov rsi, w_IN_ASCII;
call fopen;
mov r15, rax;
cmp r15, 0; (with this I can be sure it is not a NULL)
je .endProgram;
mov rdi, r15;
mov rsi, String_int;
mov rdx, TO_PRINT_LOCATION;
call fprintf; this is where my code dies
mov rdi, r15;
call fclose;
.endProgram:
ret