Linux 在一行上打印变量的值(无新行)

Linux 在一行上打印变量的值(无新行),linux,assembly,nasm,Linux,Assembly,Nasm,所以,我面临一个问题,即在新行上打印变量的每个值,但打印的格式是一行。我真的花了很多时间来寻找解决方案。但这个解决方案不起作用。我想那是因为我是汇编高手。所以,我删除了我所有的失败。。。这是我的代码: global main extern printf section .data str: db "%i", 10, 0 count: dw 1 section .text main: start: push dword [count] push dword str call

所以,我面临一个问题,即在新行上打印变量的每个值,但打印的格式是一行。我真的花了很多时间来寻找解决方案。但这个解决方案不起作用。我想那是因为我是汇编高手。所以,我删除了我所有的失败。。。这是我的代码:

global main
extern printf
section .data
str: db "%i", 10, 0
count: dw 1

section .text
main:
start:
push dword [count]
push dword str
call printf
push dword [count]
push dword str
call printf
那么,现在在终端打印中:

1
1
要这样打印,我需要做什么:

1 1
请举例说明我理解的代码。。。。请不要给我在互联网上的类似问题的第一个链接,因为我尝试了这个。我真的不明白。。。 如何在打印字符串中插入不同的字符,例如“:”、“空格”、“/”和其他。。。? 谢谢你:)

改变

str: db "%i", 10, 0


10
是换行符。这将用空格代替它。

str定义中的
10
用作U+000A换行符,用作换行符。@ecm我知道。我试图删除它,但是在这个str没有打印出来之后,你可能需要刷新C库的缓冲区;具有可在Linux上运行的NASM代码,因此即使在从格式字符串中删除换行符后,也可以刷新缓冲区以查看printf输出。该文件可以编译,但不输出任何内容。也就是说,如果10,0,则显示ifnomation;如果删除10,则完全不显示任何内容。请确保在程序结束时调用
exit()
,以便刷新缓冲区。
str: db "%i ", 0