Я разбираю строку (a char*
), и я использую sscanf
для разбора чисел из строки в двойные символы, например:
// char* expression;
double value = 0;
sscanf(expression, "%lf", &value);
Это отлично работает, но я хотел бы продолжить синтаксический анализ строки с помощью обычных средств. Мне нужно знать, сколько символов было проанализировано с помощью sscanf
, чтобы я мог возобновить мой синтаксический разбор вручную из нового смещения.
Очевидно, самым простым способом было бы как-то вычислить количество символов, которые sscanf
анализирует, но если нет простого способа сделать это, я открыт для альтернативных вариантов двойного разбора. Однако в настоящее время я использую sscanf
, потому что он быстрый, простой и читаемый. В любом случае, мне просто нужен способ оценить двойник и продолжить синтаксический анализ после него.