Как да sscanf() пример използвате запетая (,) като разделител

Отказ от отговорност за оттеглено съдържание на БЗ

Тази статия е написана за продукти, за които Microsoft вече не предлага поддръжка. Ето защо тази статия се предлага „както е“ и вече няма да бъде актуализирана.

Резюме


Пример показва как да използвате функцията sscanf() C средата за четене от вътрешен буфер границите полета със запетая (,). Ключът е да се използват скоби във формата на sscanf() функция. Форматът ще бъде % [^ ","], която указва на функцията за четене от буфера до запетая (,).

Примерен код

/* The following sample illustrates the use of brackets and the   caret (^) with sscanf().
Compile options needed: none
*/

#include <math.h>
#include <stdio.h>
#include <stdlib.h>

char *tokenstring = "first,25.5,second,15";
int result, i;
double fp;
char o[10], f[10], s[10], t[10];

void main()
{
result = sscanf(tokenstring, "%[^','],%[^','],%[^','],%s", o, s, t, f);
fp = atof(s);
i = atoi(f);
printf("%s\n %lf\n %s\n %d\n", o, fp, t, i);
}
Свойства

ИД на статията: 38335 – Последен преглед: 16.01.2017 г. – Редакция: 1

Обратна връзка