>>28
va_arg が何をやってるかを低レベルで理解したいってこと?

関数の引数はスタックに積まれるので
最初の引数のポインタを渡すことで
それ以降の引数のアドレスを求めているだけ。
取り出すときは型情報を指定することでサイズがわかる。

stdarg.h 使わずに実装すると勉強になりますよ。