单片机C语言怎样把double型转换为char型数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机C语言怎样把double型转换为char型数据相关的知识,希望对你有一定的参考价值。
在单片机怎样把double型转换为char型数据(C语言方法)
单片机不清楚,我只知道在我的机子上可以用如下方法#include "stdio.h"
#include "string.h"
void main()
double a=12.345;
unsigned char b[8];
memcpy(b,&a,8);
for(int i=0;i<8;i++) printf("%x ",b[i]);
或者
#include "stdio.h"
#include "string.h"
union A
double a;
unsigned char b[8];
;
void main()
A t;
t.a=12.345;
for(int i=0;i<8;i++) printf("%x ",t.b[i]);
参考技术A lxb200709 你那个绝对错误,
double a=0.37;
char b;
你能直接 b= (char) a;????
一楼虽然麻烦,但是确实正确的。 参考技术B lxb200709 正解!
郑州条码收款机 说得不对
1.楼主提出的问题是要转换成char型,并不是取出相应8个字节内的数。
2.对于你提出那个疑问也很容易解决,可以在转换前根据想保留的有效位位数对源数乘以一个倍数。再说了这能成问题么?楼主并没有说转换后的数据要再做什么用,可能楼主并不需要多高的精度 参考技术C 和C里一样如
doulbe a;
char b;
b=(char)a;
不过注意不要溢出。。。 参考技术D 将DOUBLE型数据用CHAR字符串形式处理本回答被提问者采纳
arduino 中如何将字符串型转换为float型?
arduino 中如何将字符串型转换为float型?我要在串口输入字符串,比如“12.34”,要把它转换为float,给连接电机的输出端口作为电机速度。arduino 中如何将字符串型转换为float型?我要在串口输入字符串,比如“12.34”,要把它转换为float,给连接电机的输出端口作为电机速度。
高手指教啊
float a=s.toFloat(); 参考技术B #include "stdlib.h"
float f;
char* b="12.34";
f=atof(b); 参考技术C 你试试看,
定义一个变量B
串口输入的是A,字符型
加一句:B=(float)A;
我也没试过。
以上是关于单片机C语言怎样把double型转换为char型数据的主要内容,如果未能解决你的问题,请参考以下文章