鱼C论坛

 找回密码
 立即注册
查看: 1341|回复: 1

我想问一下float的变量引用到别的函数的时候为啥带小数点后面的数就会变成0啊

[复制链接]
发表于 2021-1-23 20:21:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <math.h>

extern float coldTemper;
float k_thermocoupleCalculate(void)
{
        float cold = coldTemper; //冷端温度
   
        float e =12.5; // [mV] cold junction equivalent thermocouple voltage 冷端温度的电压

                const static float a[] = { // 0 .. 1372 degC
                        -0.176004136860E-01, 0.389212049750E-01, 0.185587700320E-04, -0.994575928740E-07,
                        0.318409457190E-09, -0.560728448890E-12, 0.560750590590E-15, -0.320207200030E-18,
                        0.971511471520E-22, -0.121047212750E-25,
                };

                const static float c[] = {
                        0.118597600000E+00,
                        -0.118343200000E-03,
                        0.126968600000E+03,
                };

                for (int i = 0; i < 9; i++)
                {
                  e += a[i] * pow(cold, i);
                }

                e += c[0] * exp(c[1] * (cold - c[2]) * (cold - c[2]));
               
       
return e;
}
引用的函数
float coldTemper;
float E;
extern float k_thermocoupleCalculate(void);

else if (_200ms_cnt %5 ==4)                       // 测冷端温度
      {
        coldTemper= get_18B20();
         float E=k_thermocoupleCalculate();//E是冷端电压
      
      }
设e=12.5的时候E=0,e=12.0的时候E=12 这是为啥啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-24 01:39:41 | 显示全部楼层
你的程序不全,不好帮你判断
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 08:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表