LINUX.ORG.RU

С:sscanf: считывание int или char* из строки произвольного формата


0

0

Добрый всем день, есть задачка: существует файл со строками, в котором
в произвольном порядке расставлены значения int или char*, которые 
необходимо из нее получить, например:

a  1  4  6  5
3 bc 5 7 11
...
6  8  7  0  xy

причем формат каждой из строк _заранее известен_.

Нельзя ли как-нибудь передать sscanf подядок значений в строке для
всех 5 случаев?

{ char cv[4]; int iv[4];
  sscanf (bfr, format_str, ??????)
}
где format_str это "%3s%3d%3d%3d%3d" и так далее,
а не писать 5 в данном случае (как сейчас сделано) sscanf() 
в зависимости от format_str?

Парсить всю строку посимвольно не хочется, а значений может быть больше, чем 5...

Заранее спасибо.
★★
Ответ на: комментарий от alphex_kaanoken

На самом деле необязательно (я так и написал, что просто не хочется...) Как парсить стоку я представляю, просто хотелось бы упростить еще. Ну если нельзя, то и ладно...

octy ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.