24小时热门版块排行榜    

查看: 367  |  回复: 2

ryanmoser

铜虫 (小有名气)

[求助] fscanf 无法读取数据已有1人参与

我想把ID为20的体最高温度保存到Tmax.txt文件里,然后不断读取并更新Tmax.txt文件,以保留历史最高温度,可是不知道为什么每次cache读取以后的值都是0.00000,文件里明明是300多K,求大神指教,附上udf文件
#include "udf.h"
real TMAX;
DEFINE_ADJUST(Tmax,d)
{
    int ID=20;     
    FILE *fp;
    real time=CURRENT_TIME;
    int steps=N_TIME;   
    Thread *t=Lookup_Thread(d,ID);
     double Tmax=0;
     real cache;
     cell_t c;   
     thread_loop_c(t,d)
    {
     begin_c_loop(c,t)
      if(C_T(c,t)>=Tmax)
        {
          Tmax=C_T(c,t);
        }
     end_c_loop(c,t)
    }
  
         fp=fopen("Tmax.txt","r";
         fscanf(fp,"%f",&cache);
         Message("cache is %lf",cache);
         fclose(fp);
         fp=fopen("Tmax.txt","w";
         if(cache<=Tmax)
                  {
                            TMAX=Tmax;
                        fprintf(fp,"%3.1f",TMAX);
                        Message("Tmax is %3.1f", Tmax);
                   }
      
    fclose(fp);
   
}
回复此楼

» 收录本帖的淘帖专辑推荐

udf-流场

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ryanmoser

铜虫 (小有名气)

已解决, fscanf(fp,"%f",&cache);应改为fscanf(fp."%lf",%cache);,因为存储的是双精度数据
2楼2014-12-26 13:22:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

haqiao890925

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
楼主  我想请教一下  adjust 宏  和on-domain宏  两个有什么区别   我感觉这两个都可以统计 计算域的值  比如  平均温度最大温度  等等
微笑面对任何困难
3楼2014-12-26 15:38:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ryanmoser 的主题更新
信息提示
请填处理意见