как разобрать пустую подстроку с помощью sscanf .......
если моя строка str [] = "первая, третья, последняя." я не могу прочитать третью и последнюю подстроку, если моя вторая подстрока равна нулю. Есть ли решение для преодоления этой ошибки ..... ?????
**Code:**
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
char *tokenstring = "first,second,25.5,15";
int result, i;
double fp;
char o[10], f[10], s[10], t[10];
void main()
{
result = sscanf(tokenstring,"%[^','],%[^','],%[^','],%s", o,t,s,f);`sscanf function`
fp = atof(s);
i = atoi(f);
printf("%s\n %lf\n %s\n %d\n", o,t,fp,i);
}
for this program if i execute my output is
`output`
>first
>second
>25.5
>15
но если я попытаюсь удалить подстроку "second" в указателе строки токена ... и если я попытаюсь выполнить, то я получу вывод как:
char *tokenstring = "first,,25.5,15";
>first
>(blank)
>0.00
>0
как мне прочитать третью и четвертую подстроку в строке "tokenstring" ... любые предложения ?????????? .