本文向您展示了C语言如何将浮点数转换为字符串。内容简洁易懂,一定会让你大放异彩。希望通过这篇文章的详细介绍,你能有所收获。
00-101010
把浮点数转换为字符串
标准C语言提供atof函数将字符串转换为双精度,但不提供库函数将float/double转换为字符串,而是使用sprintf和snprintf函数将格式打印为字符串。
函数声明:
intsprintf(char*str,constchar *格式,);
intsnprintf(char*str,size_tsize,constchar *格式,);示例(book99.c)
intsprintf(char*str,constchar *格式,);
intsnprintf(char*str,size_tsize,constchar *格式,);
示例(book99.c)
/*
*程序名:book99.c,这个程序演示了打印格式sprintf和snprintf函数。
*作者:C语言技术网(www.freecplus.net)日期:20190525
*/
# includestdio.h
#includestring.h
intmain()
{
floatff=1024.58
doubledd=12345678901234.58
charstrff[21],strdd[21];
memset(strff,0,sizeof(strff));memset(strdd,0,sizeof(strdd));
//将浮点ff转换为字符串并存储在strff中。
sprintf(strff,' %.2f ',ff);
printf('strff=%s\n ',strff);//输出strff=1024.58
//将双精度浮点数dd转换为字符串,存储在strdd中。
sprintf(strdd,' %.2lf ',DD);
printf('strdd=%s\n ',strdd);//输出strdd=12345678901234.58
memset(strff,0,sizeof(strff));memset(strdd,0,sizeof(strdd));
//将浮点数ff转换成字符串,存储在strff中,只留下前10个字符。
snprintf(strff,11 ' % . 2f ',ff);
printf('strff=%s\n ',strff);//输出strff=1024.58
//将双精度浮点数dd转换成字符串,存储在strdd中,只留下前10个字符。
snprintf(strdd,11,' %.2lf ',DD);
printf('strdd=%s\n ',strdd);//输出strdd=1234567890
}运行结果
unix和windows平台之间
1、把float/double格式化输出到字符串
snprintf函数的性能略有不同。在Linux平台上,大小为1的字符是保留的,在windows平台上,大小字符是保留的。
2、注意事项
整型、浮点型和字符串间转换
整数转换为字符串:
将浮点型值转换为字符串:
1.整型、浮点型——字符串
下列函数可以将字符串转换为数字:
以上内容是C语言如何将浮点数转换成字符串。你学到什么知识或技能了吗?如果你想学习更多的技能或丰富你的知识,请关注行业信息渠道。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/143752.html