#include<stdio.h>
int main()
{
/* itoa在windows下才有,linus下可以通过sprintf来做转换
函数功能:把格式化的数据写入某个字符串
返回值:字符串长度
*/
//sprintf 函数实现字符串的连接功能
char k[100];
int test=12345;
int j=0,n=0;//可以返回字符串长度
n=sprintf(k,"qwer123%dhellow world",test);
printf("连接后的字符串为:%s\t长度为:%d",k,n);
char *who="I";//可以替换成who[]="I";
char *whom="优快云";
int c=+123;
char s[200];
printf("\n待连接的字符串:%s\t%s\t%d\n",who,whom,c);
j=sprintf(s,"%s love %s %d.",who,whom,c);//产生:"I love 优快云." 这字符串写到s中
printf("连接后的字符串为:%s\t长度为:%d",s,j);
//sprintf 函数实现itoa的功能
n=sprintf(k,"123%d",test);
printf("\n原来的整形数为:%d",test);
printf("\n转换后的字符串数据为:%s\t长度为:%d\n",k,n);
//变成十六进制的字符串
printf("\n原十进制数为:4567");
sprintf(s, "%8x", 4567); //小写16 进制,宽度占8 个位置,右对齐
printf("\n转换后的十六进制小写字符串为:%s\n",s);
sprintf(s, "%o", 4567); //小写16 进制,宽度占8 个位置,右对齐
printf("转换后的八进制字符串为:%s\n",s);
printf("\n原十进制数为:4568\n");
sprintf(s, "%-8X", 4568); //大写16 进制,宽度占8 个位置,左对齐
printf("转换后的十六进制大写字符串为:%s\n",s);
sprintf(s, "%-8o", 4568); //大写16 进制,宽度占8 个位置,左对齐
printf("转换后的八进制字符串为:%s\n",s);
}
结果演示:
更多的用法请参考:https://blog.youkuaiyun.com/sjf331/article/details/339254
sprintf函数详解
本文详细介绍了sprintf函数的应用,包括字符串连接、整型转字符串及不同进制间的转换等操作。通过实例展示了sprintf函数如何灵活地处理各种数据类型。
7637

被折叠的 条评论
为什么被折叠?



