我需要" 5.71"
轉換爲5.71
在C.
我讀的字符串作爲令牌,但需要將該值存儲爲double。
有沒有這樣做的功能?我應該使用哪種打印語句?
char *number = "5.71";
printf("%???", double);
任何幫助將是偉大的!
我需要" 5.71"
轉換爲5.71
在C.
我讀的字符串作爲令牌,但需要將該值存儲爲double。
有沒有這樣做的功能?我應該使用哪種打印語句?
char *number = "5.71";
printf("%???", double);
任何幫助將是偉大的!
考慮使用
sscanf(number, "%f", &doubleVar);
這應該是 '標準' 的方式來做到這一點。
有沒有這樣做的功能?
是,strtod, strtof and strtold將字符串轉換爲double
,分別float
和long double
。例如:
float f = strtof("2.718281829", NULL);
,我應該用什麼樣的打印語句?
恩,他們叫做格式說明符。此外,他們會發生變化,這取決於確切的類型:
float f = 3.14;
double d = 3.14;
long double ld = 3.14;
printf("%f %lf %llf\n", f, d, ld);
[字符串轉換爲雙(http://stackoverflow.com/questions/4308536/converting-a-string-into-a-double) ,[將字符串轉換爲雙精度](http://stackoverflow.com/questions/5601537/converting-a-string-to-double) – ljedrz
和其他多個。 – ljedrz