详解sprintf()&sprintf |
您所在的位置:网站首页 › format参数详解 › 详解sprintf()&sprintf |
sprintf
函数功能:把格式化的数据写入某个字符串 头文件:stdio.h 函数原型:int sprintf( char *buffer, const char *format [, argument] … ); 返回值:字符串长度(strlen) 在将各种类型的数据构造成字符串时,sprintf 的功能很强大。sprintf 与printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多.。 printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。 输出格式控制: %% 印出百分比符号,不转换。 %c 整数转成对应的 ASCII 字元。 %d 整数转成十进位。 %f 倍精确度数字转成浮点数。 %o 整数转成八进位。 %s 整数转成字符串。 %x 整数转成小写十六进位。 %X 整数转成大写十六进位。 示例: #include #include using namespace std; int main() { char str[20]; char *s1="hello"; char *s2="world"; sprintf(str,"%s %s",s1,s2); printf("%s\n",str); char str_1[20]; int n,a=3,b=5; n=sprintf(str_1,"%d + %d = %d",a,b,a+b);//返回字符个数 printf("[%s] :字符数为%d\n",str_1,n); char str_2[20]; sprintf(str_2,"%x %o abcdefg",123,123);//控制输出字符串的转换为相应的进制数 //分别转换为十六进制和八进制 puts(str_2); sprintf(str_2,"%X %o",123,123);//给数组赋新值 puts(str_2);//仅输出 "7B 173",说明sprintf向字符串str_2写入字符后,尾部自动加了'\0' cout |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |