www.3112.net > 如何在C++中,讲FloAt型数据转换成ChAr数据

如何在C++中,讲FloAt型数据转换成ChAr数据

貌似不太可以呢!char型占一个字节,float占4个字节。如果将超过char范围的float数据转换成char型,那么必然会丢失。

可以使用强制转换,其一般形式为:(类型说明符) (表达式) 其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为浮点型,(int)(x+y) 把x+y的结果转换为整型。 这种方法显然对浮点型数据的精度会有影响,且...

可使用库函数strtod(const char* ptr, char** endptr)或atof(const char *ptr)将char数组转换成float型数据。 当strtod的第二个参数endptr不为NULL时,且ptr中含非法字符,则会将非法字符通过endptr返回。 #include #include int main(){ char b...

#include int main(void) { float a=0.0f; unsigned char * b = (unsigned char*)&a; int c[4]; int i = 0; scanf("%x %x %x %x", c+1, c, c+3, c+2); for(i = 0; i

sprintf(b,"%f",a);通过这条语句可以 1 #include 2 3 int main() 4 { 5 float f=1.01; 6 char f_str[10]={0}; 7 sprintf(f_str,"%f",f); 8 printf("%s\n",f_str); 9 return 0; 10 } 结果: 1.010000

char本来就是个数字,如果就是转换,直接int i = ch就可以了。 关键是看你要做什么。。还有什么编程环境

sprintf(buf, "%d",(int)score); sprintf(buf, "%.0f",score); 上面两种都行。

c++中数据类型的转换一般分为隐含转换和强制转换两种; (1)隐含转换 算术运算符 关系运算符 逻辑运算符赋值运算符等二元运算符要求两个运算符的类型一致,算术运算 关系运算中参与运算的类型不一致时要进行隐含转换,原则是将低类型转化成高类...

数据类型转换一般不应该大转小,哪里有大转小的。如果你非要转换成字符类型,必须用字符类型数组了。至于方法,我琢磨着会很多。随便给你写个思路。 unsigned char valuetemp[]; float a = 1.25; //假设此a后面的位数不知。 int b =0; int step ...

t=new unsigned char[len*sizeof(float)]; memcpy(t,p,len*sizeof(float)); // string.h 这就是原封不动按二进制保存过去,不知是否是你要的效果

网站地图

All rights reserved Powered by www.3112.net

copyright ©right 2010-2021。
www.3112.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com