printf(): Add support for %s, fix buffer flushing (length given was r11, not r10)
This commit is contained in:
@@ -34,8 +34,12 @@ section .rodata
|
||||
|
||||
; printf()
|
||||
msgPrintf db "TEST printf()",NL,EOS
|
||||
printf1 db TAB,"printf(",DQUO,"He%ll%o there%%%%%!%s%!%\n",DQUO,"): ",NL,TAB,TAB,EOS
|
||||
printf1Str db "He%ll%o there%%%%%!%s%!%",NL,EOS
|
||||
printf1 db TAB,"printf(",DQUO,"He%ll%o there%%%%%!%!%\n",DQUO,"): ",NL,TAB,TAB,EOS
|
||||
printf1Str db "He%ll%o there%%%%%!%!%",NL,EOS
|
||||
printf2 db TAB,"printf(",DQUO,"Are %s doing %s?\n",DQUO,", printf2Str1, printf2Str2): ",NL,TAB,TAB,EOS
|
||||
printf2Str db "Are %s doing %s?",NL,EOS
|
||||
printf2Str1 db "you",EOS
|
||||
printf2Str2 db "okay",EOS
|
||||
|
||||
; strlen()
|
||||
strlenStr1 db "Hello",EOS
|
||||
@@ -94,6 +98,14 @@ _start:
|
||||
call print
|
||||
lea rdi, [rel printf1Str]
|
||||
call printf
|
||||
|
||||
; TEST 2
|
||||
lea rdi, [rel printf2]
|
||||
call print
|
||||
lea rdi, [rel printf2Str]
|
||||
lea rsi, [rel printf2Str1]
|
||||
lea rdx, [rel printf2Str2]
|
||||
call printf
|
||||
%endif
|
||||
|
||||
;---
|
||||
|
Reference in New Issue
Block a user