knrt.net
当前位置:首页 >> C语言 int/FloAt/DouBlE 数值转成字符串的方法或者... >>

C语言 int/FloAt/DouBlE 数值转成字符串的方法或者...

#include #include main() { char a[10]="12345.56"; float b=atof(a); printf("%f\n",b); }

itoa能把整数转换为字符串,但它不是C语言标准库函数。 其实这么简单的问题,自己写一个啦。 把int 的 1234 用取模逐位地取出来,跟 0~9 比较,再转化为字符。 效率肯定比itoa低,但好歹能锻炼自己的实现能力。

float变量4个字节(32位),char变量1个字节(8位),从float强转到char,那只会取float的低8位赋值给char 70000的二进制是 1 00010001 01110000,低8位是01110000,换成十进制就是112,查ASCII表就知道112对应的是 p 了

是以整型的位数为限的,输入位数太长了不行。 //#include "stdafx.h"//vc++6.0加上这一行. #include "stdio.h"// void main(void){ double rn=9876.5678; int i=1000000000,k,pt=1,n; char a[12]=""; printf("Enter a floating point number...\...

楼上的几位说得不是很对,当你在声明一个常量的时候例如1.33只要你没有在后面加个f也就是1.33f 那么系统默认的存储方式就是double 如果你要直接把常量赋值给double b=1.33 其实没有结果任何转换 要是声明为1.33f也可以直接用double b=1.33 f dou...

#include #include int main () { char szOrbits[] ="365.24"; char* pEnd; float f1; f1 = strtof (szOrbits, &pEnd); printf("%f\n",f1); return 0; }

#include #include int main(){ char s[50]; float a=1.03; sprintf(s,"%f",a);//如果用sprintf函数小数点后会有6位 for(int i=strlen(s)-1;i>=0;i--) { if(s[i]!='0') { s[i+1]='\0';//需要把后面的0去掉 break; } } printf("%s\n",s); return 0;}

double 转换成float, 如果数值没有超界,例子如下: void main() { double a=123.4L; float b; b = (float) a; printf("%f",b); } 如果数值范围超界,则不应转换。

浮点型转换为字符型一般需要计算的,比如现在浮点型是414.15f 转换为字符型,那么就需要将这串数据转换为ASCII码,单个数字单个数字转换: 定义一个缓冲区:char Buffer[6]用于存放这几个数字; 接着: 将浮点型放大,转换为整型:(int)(414.15 ...

可以使用sprintf函数将float类型转为字符串(字符数组)。 sprintf功能与格式化输出函数printf类似,只不过不是输出到终端,而是输出到第一个参数的字符串中。函数原型为: int sprintf(char *dst, const char *format ...); 声明与stdio.h。 当用...

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com