EDIT:實際上,當我們處於這個狀態時,我需要爲double
做同樣的事情 - 我有一些NNNDD在const char*
,其中N是整個部分,D是小數(因此在123.45中將顯示爲const char*
至12345)。我知道我會有多少個整數,並且我知道有多少個小數,所以這只是一小部分。boost :: posix_time :: ptime from const char *「substring」
我有一個const char*
中間的某個地方有格式爲HHMMSSMMM(小時,分鐘,秒,毫秒)的時間序列。我想創建一個ptime
(我知道序列開始的位置,所以我有一個const char*
開始)。有沒有一個好的,有效的方法來做到這一點?現在,我提取每個時間單位值,將它們存儲在局部變量中,然後調用ptime
的構造函數,默認boost::gregorian::date()
和time_duration
,hours(hh) + minutes(mm) + seconds(ss) + milliseconds(mmm)
...但它感覺有點笨拙,迂迴。我不應該只能通過一個時間字符串,不擔心日期?
不是'atof'是一個相對昂貴的操作嗎? – Argent
當然,但我沒有看到將'string'轉換爲'double'的更好方法。 – lcs