在C++BUILDER里把一个float变量的值转化成为字符串(100分)

  • 主题发起人 主题发起人 keke731
  • 开始时间 开始时间
K

keke731

Unregistered / Unconfirmed
GUEST, unregistred user!
在C++BUILDER里把一个float变量的值转化成为字符串,需要什么函数要调用什么头文件??
具体的格式是怎么样? 可以用一个例子讲解一下吗?
 
1)变量的值转化成为字符串
float a;
double b;
int c;
String aFloatstr,aDoublestr,aIntstr;
a = StrToFloat(aFloatstr);
b = StrToFloat(aDoublestr);
c = StrToInt(aIntstr);
aFloatstr = FloatToStr(a);
aDoublestr = FloatToStr(b);
aIntstr = IntToStr(c);
 
FloatToStr
不用头文件,它自动会加,你也可以在帮助中查查看!
 
标准C的实现:
#include <stdio.h>
...
char sBuf[100]="";
sprintf(sBuf, "%.2f", 3.147);
//结果:sBuf = "3.15"
VCL的实现:
AnsiString S = FormatFloat("0.00", 3.142);
//或FloatToStr(),但FormatFloat的控制能力更强
//结果:S = "3.14"
 
FloatToStr就可以了。
 
要定制输出格式的话,可以用 FloatToStrF 函数,它可以指定输出小数位数和精度。
例如: FloatToStrF(f1, ffFixed, 10, 6) 就是将浮点数f1输出为6位小树的字符串。
 
看来高手多多
 
http://www.chinabcb.com/bbs/
 
float f;
AnsiString str;
str.sprintf("%0.2f",f);
 
double f = 12.3456;
FormatFloat("0.##",f);
保留两位小数12.35;
f = 0.2;
FormatFloat("0.00",f);
保留2位小数0.20
 
AnsiString(flaot)
 
后退
顶部