关于PrintFormat()函数的使用

 

如何打印出自动省略小数位后的零 ?

例如 :

3.14126000

1637.10

-93828.22100


用PrintFormat()函数如何自动省略0, 打印结果能得到这样 :

3.14126

1637.1

-93828.221


求大神指教, 谢谢!

 

明确精度即可

%.2f是两位小数,以此类推

最大好像16位?

 
   double pi=M_PI; 
   Print("pi = ",DoubleToString(pi,16)); 
       
   double pi_3=NormalizeDouble(M_PI,3); 
   Print("NormalizeDouble(pi,3) = ",DoubleToString(pi_3,16)) 
   ; 
   double pi_8=NormalizeDouble(M_PI,8); 
   Print("NormalizeDouble(pi,8) = ",DoubleToString(pi_8,16)); 
    
   double pi_0=NormalizeDouble(M_PI,0); 
   Print("NormalizeDouble(pi,0) = ",DoubleToString(pi_0,16)); 
/* 
   Result: 
   pi= 3.1415926535897931 
   NormalizeDouble(pi,3)= 3.1419999999999999 
   NormalizeDouble(pi,8)= 3.1415926499999998 
   NormalizeDouble(pi,0)= 3.0000000000000000 
*/
NormalizeDouble( )
DoubleToString( )

兩個配合使用可以達到你要的 詳情可參閱幫助文件