char str[20];
double f=14.309948;
sprintf(str,"%6.2f",f);
5、可以將多個數(shù)值數(shù)據(jù)連接起來。
char str[20];
int a=20984,b=48090;
sprintf(str,"%3d%6d",a,b);
str[]="20984 48090"
6、可以將多個字符串連接成字符串
char str[20];
char s1={'A','B','C'};
char s2={'T','Y','x'};
sprintf(str,"%.3s%.3s",s1,s2);
%m.n在字符串的輸出中,m表示寬度,字符串共占的列數(shù);n表示實際的字符數(shù)。%m.n在浮點數(shù)中,m也表示寬度;n表示小數(shù)的位數(shù)。
7、可以動態(tài)指定,需要截取的字符數(shù)
char s1={'A','B','C'};
char s2={'T','Y','x'};
sprintf(str,"%.*s%.*s",2,s1,3,s2);
sprintf(s, "%*.*f", 10, 2, 3.1415926);
8、可以打印出i的地址
sprintf(s, "%p", &i);
上面的語句相當(dāng)于
sprintf(s, "%0*x", 2 * sizeof(void *), &i);
9、sprintf的返回值是字符數(shù)組中字符的個數(shù),即字符串的長度,不用在調(diào)用strlen(s)求字符串的長度。