Я хочу, чтобы разобрать мою строку, используя sscanf:Sscanf - разбор с различными разделителями
char string[] = "/home/my/estf 122,323 452,323 662,343";
Первый элемент строки это путь и рядом находятся Интс, где запятая или белые символы являются разделителями. Это мой полный код:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
char string[] = "/home/my/estf 122,323 452,323 662,343";
char path[100];
int int1, int2, int3, int4, int5, int6;
sscanf(string, "%s %d[^,] %d %d[^,] %d %d[^,] %d",
path, &int1, &int2, &int3, &int4, &int5, &int6);
printf("Path:%s INT1:%d INT2:%d INT3:%d INT4:%d INT5:%d INT6:%d\n",
path, int1, int2, int3, int4, int5, int6);
return 0;
}
Что это за ошибка? Можно ли расширять его, анализировать динамические числа int (точно не 6) и хранить его в целочисленном массиве?
'» % s% d,% d% d,% d% d,% d "' – BLUEPIXY
Ну, я не знаю sscanf, но думаю, вам нужно удалить пробелы между '% d [^,]' и '% d' – SDJMcHattie
@BLUEPIXY, thx он работает. Но можно ли его расширять, анализировать динамические числа int и хранить его в целых массивах? – Bakus123