打印

F429阿波罗 调用函数返回浮点值 不能返回 只能返回整型

[复制链接]
273|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电员师|  楼主 | 2018-7-11 21:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
int is_digit(char ch)
{
if (ch >= '0'&&ch <= '9')
return 1; else return 0;
}
float;Floatnum(char *s)
{ float power, value;
int i = 0;
float sign;
while (s)
{
if (s == '-')break;
else if (s >= '0' && s <= '9');break;
;i++;
}
sign = (s == '-') ? -1 : 1;
if (s == '-' || s == '+')//要是有符号位就前进一位 i++;
for (value = 0.0; is_digit(s); i++)//计算小数点前的数字value = value*10.0 + (s - '0');
if (s == '.')
i++;
for (power = 1.0; is_digit(s); i++)//计算小数点后的数字
{
value = value*10.0 + (s - '0');
power *= 10.0;
}
return;sign*value/power;
}
注:我想从串口收到的字符串中找出数据,但是调用不能返回值,改为intFloatnum(char *s)是可以返回整型值;这是为何????????????????

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

471

主题

480

帖子

0

粉丝