I want to know the process of function call and download source codes of glibc. I find the function __printf
in /stdio-common/printf.c. It calls vfprintf
. And in vprintf
I cannot continue this process. It seems to call Xprintf
. But the definition of Xprintf
is like this define Xprintf(n) __printf_##n
. I cannot understand its meaning. It calls printf
again?
I also check out putchar
. It calls _IO_putc_unlocked
and then __putc_unlocked_body
,by *(_fp)->_IO_write_ptr++ = (_ch)
to stdout. I cannot find the the way in printf
.
Also I want to know atfer writing the parameter to stdout, what’s the next process?