如何将float转换成string

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将float转换成string相关的知识,希望对你有一定的参考价值。

参考技术A 可以使用sprintf函数将float类型转为字符串(字符数组)。
sprintf功能与格式化输出函数printf类似,只不过不是输出到终端,而是输出到第一个参数的字符串中。函数原型为:
int sprintf(char *dst, const char *format ...);
声明与stdio.h。
当用于float转换时,可以写作:
sprintf(buf, "%a.bf", var);的格式,功能为将var转为字符串并存在buf中。
其中,a和.b均可省略,二者的作用为:
1 a,整型常数,输出的宽度设置为a的绝对值(|a|)字节,当实际宽度大于|a|时,按照实际宽度输出。不足部分补空格。当a>0时,有效数字右侧对齐,否则左侧对齐。当不设置a时,结果按照实际宽度输出。
2 .b,设置小数的位数,当实际有效小数位数不足b位时,以0补足b位;超过b位时,四舍五入到b位。 当.b不设置时,默认输出6位小数。

c语言里如何将float转换成string

网上查了好多,都说用stdlib头文件里面的_gcvt函数,但是linux的这个头文件里没这个函数,还有什么简单点的办法吗?

sprintf类似于fprintf函数,后者格式化打印到文件,前者打印到一个char*指向的内存

用法:

#include <stdio.h>

float f = 1032.192
char buffer[32];

// 执行以下语句,buffer里面就保存了f转换的结果
sprintf(buffer, "%f", f);

参考技术A 可以使用sprintf函数将float类型转为字符串(字符数组)。
sprintf功能与格式化输出函数printf类似,只不过不是输出到终端,而是输出到第一个参数的字符串中。函数原型为:
int sprintf(char *dst, const char *format ...);
声明与stdio.h。
当用于float转换时,可以写作:
sprintf(buf, "%a.bf", var);的格式,功能为将var转为字符串并存在buf中。
其中,a和.b均可省略,二者的作用为:
1 a,整型常数,输出的宽度设置为a的绝对值(|a|)字节,当实际宽度大于|a|时,按照实际宽度输出。不足部分补空格。当a>0时,有效数字右侧对齐,否则左侧对齐。当不设置a时,结果按照实际宽度输出。
2 .b,设置小数的位数,当实际有效小数位数不足b位时,以0补足b位;超过b位时,四舍五入到b位。 当.b不设置时,默认输出6位小数。
参考技术B 关注此问题 参考技术C 自己写转换算法追问

会写的话就不来这问了

追答

C语言没有string类型

追问

char数组,最后一个元素是'\0'的话,就相当于string了

以上是关于如何将float转换成string的主要内容,如果未能解决你的问题,请参考以下文章

如何将float转换为string

如何将float转换为string

在SQL2000中如何把字符串转换成float型?

C# 将float类型转换为string类型的方法都有哪些?

如何将mapobject转换成string

如何将string转换成wstring C++