一:基础
二:简单实例
1:
char str[100];
char *str1 = "Hello";
char *str2 = "World";
sprintf(str, "%s %s!", str1, str2);
printf("%s\n", str); // 输出:Hello World!
2:不常用的使用
于怪格式的说明:
组成:%开头,一个字母来结尾,中间可能会夹一些点啊数字啊什么的.见前面.
这个字母不是随便写的(废话),有意义,具体意义见文章末尾(抄的).
中间的点和数字(如果有的话)的含义:
用上面的%08.3f来做说明:
首先%开头.
紧接着的0表示"空格填0",也就是说比如你格式化后的字符串长度是8,但是本身没那么长,就用0来补上.
下面的8是格式化后的字符的最小宽度,最小的意思我还没领悟,先理解成总的宽度吧(包括小数点——如果有的话).
然后.3表示小数点后面保留3位,不够就按前面的空格填0,多出就截掉.
最后的f意义见最后.
num = 123.45;
sprintf(str,"%010.2f", num);
上述代码将会输出000123.45。其中,%010表示输出10个字符长度,如果实际长度不足则在前面补0。
还需要注意的是,如果输出的浮点数为负数,则会在字符串前面添加一个负号“-”。因此,在指定长度时需要增加1个字符位置作为符号位。例如: