C格式说明符

Vij*_*jay 5 c format-specifiers

在我工作的时候,在代码中的某个地方,我看到了以下内容.我对格式说明符感到困惑sprintf

   d_number = strtol( tmp_buf , (char **)NULL, 16);
   memset( tmp_buf , ' ' , sizeof( tmp_buf ) );
   sprintf( tmp_buf , "%0.*d" , (int)sizeof( dec_number ) , d_number  );
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下吗?

sta*_*ker 6

.*表示未在格式字符串中指定精度,但是作为必须格式化的参数之前的附加整数值参数.(d_number)

http://www.cplusplus.com/reference/clibrary/cstdio/printf/