У меня есть большие строки, которые похожи на следующие ...
some_text_token
24.325973 -20.638823
-1.964366 0.753947
-1.290811 -3.547422
0.813014 -3.547227
0.472015 3.723311
-0.719116 3.676793
other_text_token
24.325973 20.638823
-1.964366 0.753947
-1.290811 -3.547422
-1.996611 -2.877422
0.813014 -3.547227
1.632365 2.083673
0.472015 3.723311
-0.719116 3.676793
...
... из которого я пытаюсь эффективно, и в чередующемся порядке они появляются в строке, захватить ...
- текстовые токены
- значения с плавающей точкой
- пустые строки
... но у меня проблемы.
Я попробовал strtod и успешно извлек плавающие числа из строки, но я не могу получить цикл с использованием strtod, чтобы сообщить мне чередующиеся текстовые токены и пустые строки. Я не уверен на 100%, что strtod - это "правильный путь", учитывая чередующиеся токены и пустые строки, которые меня также интересуют.
В строке присутствуют токены и пустые строки для предоставления контекста поплавкам, поэтому моя программа знает, для чего нужно использовать значения с плавающей запятой, возникающие после каждого токена, но strtod, по понятным причинам, более ориентирован на простое сообщение о возвратах он встречается в строке без учета глупых вещей, таких как пустые строки или токены.
Я знаю, что это не очень сложно в концептуальном плане, но, будучи относительно новым для C / C ++, у меня возникают проблемы с оценкой того, на каких языковых возможностях я должен сосредоточиться, чтобы максимально эффективно использовать эффективность, которую C / C ++ может использовать для этого проблема.
Есть указатели? Меня очень интересует , почему различные подходы функционируют более или менее эффективно. Спасибо !!!