float fTemp;
 fTemp=1888.33;
 UINT uiWData = fTemp * 100;  得到的uiWData为188832, 而不是我想要的188833,  float-->UNIT怎样得到我想要的结果呢(比如此例188833才是我想要的)谢谢先!

解决方案 »

  1.   

    float fTemp;
     fTemp=1888.33;
    fTemp=fTemp * 100;
     UINT uiWData = fTemp;
      

  2.   

    double fTemp;
    fTemp=1888.33;
    UINT uiWData = fTemp *100;
      

  3.   

    To:
      f26511314(我吃巧克力饼) ,
      我正是你这样做的,不行。
      

  4.   

    To: he_zhidan(何志丹:www.vcshare.net) 
      Yes,
      你这样做是正确的, 不过我要的是float, 怎办?
      

  5.   

    float  fTemp = 1888.33;
    fTemp *= 100.0;
    int x = (int)fTemp;//加上它就好了,不过x是错的
    UINT uiWData = fTemp ;
      

  6.   

    用float 可以实现我的要求不?
      

  7.   

    float fTemp;
     fTemp=1888.33;
    fTemp=fTemp * 100;
     UINT uiWData = 0;
     uiWData = fTemp;
      

  8.   

    float fTemp;
    fTemp=1888.33;
    fTemp=fTemp * 100;
    UINT uiWData = fTemp;
    在Debug下是188833而在Release下面是188832:(
      

  9.   

    UINT uiWData = 0;uiWData 赋初值好象就可以了
      

  10.   

    double fTemp;
    fTemp=1888.33;
    fTemp=fTemp * 100;
    UINT uiWData =(int)fTemp;
    是对的,所以建议楼主改用double。。
      

  11.   

    uiWData 赋初值好象就可以了
    机器相关的,不是每次都会对的
    最好用double