Difference between printf@plt and puts@plt
问题 I've been learning assembly language by disassembling some C code. When I disassemble this basic C code with GDB: #include <stdio.h> void main(void) { printf("Hello World\n"); } Among assembly code, it gives this line: 0x08048424 <+25>: call 0x80482e0 <puts@plt> However, when I disassemble below code which has an integer in printf function: #include <stdio.h> void main(void) { int a = 1; printf("Hello Word %d\n", a); } It gives this line: 0x0804842e <+35>: call 0x80482e0 <printf@plt> What is