博士
最后登录1970-1-1
在线时间 小时
注册时间2014-10-31
|
楼主 |
发表于 2014-12-1 15:31:56
|
显示全部楼层
本帖最后由 11kxmx 于 2014-12-1 21:43 编辑
我在程序里添加了如下语句,想直接软件仿真看看结果,可编译根本通不过,错在哪里?
float a;
uint8_t s[10];
a=2/3;
sprintf(s,\"%5.3f\",a);
把两个斜杠去掉居然成功了,可又找不到查看变量的工具了,KEIL4还是和KEIL2不一样
又能查看了,选中变量名称,数值自己就出来了
但结果不对,小数点后面总是0X30,换成其它数也一样如:
a=3.14159;//可以正确显示
a=10347/1000;//显示10.0000,换成a=(double)10347/1000结果正确
b=65534;//显示正确
sprintf(s,"%6.4f",a);
sprintf(m,"%06d",b);
换成sin(a)结果为很大的负数
a=(double)sin(3),结果为-1098988318
|
|