double类型准确转换成int类型
2009-03-11 08:34
281 查看
大家可能遇到这样的情况:
double x=2.555;
int y=(int)(x*1000);
cout << "y=" << y << endl;
结果:y=2554。
如果要准确得到整型数据,可以这样。
int y=(int)(x*1000.0);
或者是通过字符串转换。
char ch[20];
sprintf(ch,"%01f",x*1000);
y=atol(ch);
如上也一样能得到准确的答案。
double x=2.555;
int y=(int)(x*1000);
cout << "y=" << y << endl;
结果:y=2554。
如果要准确得到整型数据,可以这样。
int y=(int)(x*1000.0);
或者是通过字符串转换。
char ch[20];
sprintf(ch,"%01f",x*1000);
y=atol(ch);
如上也一样能得到准确的答案。
相关文章推荐
- c++中的一些类型转换 : CString,string,int ,long,double,char*,const char*,date等 .
- [Scala--基础]--类型转换(String to Double 、Long、Float和Int)
- null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
- String类型与数值型(int,float,double等)转换
- 类型转换string,char,int,double
- java Byte和各数据类型(short,int,long,float,double)之间的转换
- MFC----Cstring 与 int、float、double 数据类型的相互转换
- int、double、boolean、char、float、long、Object等七种数据类型转换成String数据类型 用到的方法是String.valueOf();
- vc++中int,char*, float,double,CString之间的类型转换
- C++中将string类型转换为int, float, double类型 主要通过以下几种方式:
- String与int float double 类型之间的转换
- C/C++中int/long/float/double数值类型与字符串互相转换
- Qt 基本数据类型转换(int,float,double,datetime,string)
- C/C++中int/long/float/double数值类型与字符串互相转换[总结]
- C++ string 和 int, float double long数据类型的转换
- java Byte和各数据类型(short,int,long,float,double)之间的转换
- C#关于类型之间的转换,Object、int、string、double
- C++中将string类型转换为int, float, double类型 主要通过以下几种方式:
- Swift3.0之String转换成基本数据类型 Int CGFloat Double
- c++ 将string类型转换成int、 long、 double类型函数