2014-01-24 59 views
-1

使用C++從這個字符串中提取數字的最簡單方法是什麼?從C++中的字符串中提取浮點數的最簡單方法

string = "frame0.2_eyepos.bmp" 

的子幀和_eyepos.bmp都應該保持不變,而它們之間的數值應該改變...

+1

你可以使用C++ 11嗎?在這種情況下http://www.cplusplus.com/reference/regex/ – kjhf

+1

這段代碼是否會在關鍵性能代碼中調用很多次?您爲什麼尋找最有效的方式? – utnapistim

+0

您對字符串內容有何限制?前綴「frame」是否總是相同?有些數字是否可能在前綴中出現? –

回答

3

只要你確定前綴和後綴是什麼你認爲:

double d = atof(string.c_str() + 5); 
+0

我不認爲這是正確的,因爲它只忽略了字符串的框架部分...它似乎也不工作 – obelix

+0

我試過了,它沒有工作 – obelix

+0

@obelix爲我工作:http://ideone.com/ rv2sMl –

相關問題