sprintf表示将输入的内容"%03x %d foo bar"放入sval数组中,用32替换 %03x,用3141592替换%d , %03x表示十六进制
在用%.*s时,后面跟着两个参数,如下 a表示输出数据占得位置的大小,sval 表示要输出的内容
#include <stdio.h>
int main()
{
char sval[32];
sprintf(sval, "%03x %d foo bar", 32, 3141592);
int a =sizeof(sval);
printf("%.*s" ,a , sval); /*意思是输出字符串sval,但至少占a个位置,如果用%*s在字符串sval左边补空格, */
}