可以使用强制转换,其一般形式为:(类型说明符) (表达式) 其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为浮点型,(int)(x+y) 把x+y的结果转换为整型。这种方法显然对浮点型数据的精度会有影响,且注意最终输出的形式不同结果也是不同的,若要保留数字...
C里有强制类型转换,如:int a;要换成char型,语句如下:(char)a; c语言里怎么把float转换为char型 float f=3.14; char c=(char)(f); 正版软件下载2023新版行情系统(免费下载) 软件下载,客户端,更高速买卖点,高效便捷!集行情资讯于一体,火热下载中!广告 c语言里怎么把float转换为char型? C里有强制类型转换...
unsigned char str[30]={0};float n=16.3999;sprintf(str,"%f",n);str就是想要的字符串格式了 方法有很多种 也可以用函数,也可以自己写转换函数
是以整型的位数为限的,输入位数太长了不行。//#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...\nrn=");scanf("%lf",&rn); while((rn...
gcvt(double,2,char*)函数实际上是 用 sprintf() 用 %g 格式 把 float转换成 字符串,不是 转换二进制。第2 个参数 用于 %g 格式 处理成 %f 时 作 有效数字位数 要求。除非是自己编写的 gcvt(double,2,char*)float 的 二进制 内存 状态,可以 用 联合体:union u { float x;char s[...
float型是小数啊,不太明白,是要从内存里用char型来读吗?那程序如下 include<stdio.h> void main(){ float a=9.65681;unsigned char *b;int i=0;b=(unsigned char *)&a;for(;i<32;i++)printf("%c",b);puts("");} 我觉得楼主是不是把问题看错了。。。应该是int型转换成ACSII...
不知你想要实现何种程度的转换,如果对数组元素逐个用强制类型转换,其结果往往出乎我们预料,原因是浮点数所表示的范围远远超过字符型。如果为了原样访问浮点数的格式,可用字符型指针访问,获得其在内存中的存在形式,这在一些应用中是很实用的。
如果只是为了传输方便,直接内存复制就行吧。include<stdio.h>#include<math.h>#include<string.h>void main(){ float a= 1254.42f; char b[4]; float c; memcpy(b, &a, sizeof(a)); //传输过程 //接收,再转换 memcpy(&c, b, sizeof( b)); printf("%f...
举个例子吧,比如定义int a;float b;此时b/a就是浮点型即float型,是自动转换的,转换规则就是你下面写的类型名不等式