當我嘗試將char轉換爲float我使用ATOF,它不是返回整條價值,& 如何糾正這種是否有任何其他的方法來做到這一點?ATOF()不考慮整個價值在Symbian
如果我給這個長度值(700.898)它返回正確的值。如果我給3個以上的數字,那麼只會遇到問題。如果我問任何問題,請聯繫我。
float flt = 71237.898;
char myfloat[50];
sprintf (myfloat, "%f", flt); //myfloat = 71 237.8984380
float f = atof(myfloat); //f = 71.0000
刪除空格:
int myfllen = strlen(myfloat);
for(int b=0;b<strlen(myfloat);b++)
{
if(myfloat[b] == ' ')
{
int c = b;
while(c<=myfllen)
{
myfloat[c] = myfloat[c+1];
c++;
}
}
}
可以yopu發佈您遇到問題的情況嗎? – 2012-08-10 05:03:23
他確實發佈了這個案例......代碼是他發現的問題 – DanZimm 2012-08-10 05:05:23
@DanZimm代碼工作正常http://codepad.org/z77DEjq9 – 2012-08-10 05:08:43