小编Bit*_*ani的帖子

x86程序集 - 如果没有"\n",printf不会打印

所以我很困惑.我正在阅读"从头开始编程"一书,并正在使用库.

printf工作得很好,只要我在字符串中包含一个"\n",但如果没有它,它将完全没有打印.

知道为什么会这样吗?

码:

.section .data

my_str:
        .ascii "Jimmy Joe is %d years old!\n\0"

my_num: 
        .long 76

.section .text

.globl _start
_start:
        pushl my_num
        pushl $my_str
        call printf

        movl $1, %eax
        movl $0, %ebx
        int $0x80

此外,当我使用-m elf_i386进行32位模式和-dynamic-linker /lib/ld-linux.so.2 -lc进行链接时,我收到警告

ld:在搜索-lc时跳过不兼容的/usr/lib64/libc.so

如果这有任何区别,或者如果有人对如何直接加载32位库有任何建议.

谢谢!

linux x86 assembly printf

1
推荐指数
1
解决办法
1904
查看次数

标签 统计

assembly ×1

linux ×1

printf ×1

x86 ×1