介绍
本篇文章为大家展示了C语言怎样把浮点数转换为字符串,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
把浮点数转换为字符串
1,把浮动/双格式化输出到字符串
标准的C语言提供了atof函数把字符串转翻倍,但是没有提供把浮动/双转换为字符串的库函数,而是采用sprintf和snprintf函数格式化输出到字符串。
<强>函数声明:强>
int sprintf (char * str, const char *格式,,…); int snprintf (char * str, size_t 大小,const char *格式,,…),
<强>示例(book99。c) 强>
int sprintf (char * str, const char *格式,,…); int snprintf (char * str, size_t 大小,const char *格式,,…); 示例(book99.c)/* ,*程序名:book99.c,此程序演示格式化输出sprintf和snprintf函数。 ,* C语言技术网(www.freecplus.net),日期:20190525 */# include & lt; stdio.h> # include & lt; string.h> int main () { float 才能;ff=1024.58; double 才能;dd=12345678901234.58; char 才能strff [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 }
<>强运行结果强>
2,注意事项
snprintf函数在unix和windows平台下的表现略有不同,在Linux平台下,保留大小是1个字符,在windows平台下,保留个大小字符。
整型,浮点型和字符串间转换
1。整型,浮点型——在字符串
<强>整数转换为字符串:强>
<强>将浮点型值转换为字符串:强>
2。字符串——在整型,浮点型
<强>下列函数可以将字符串转换为数字:强>
上述内容就是C语言怎样把浮点数转换为字符串,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。