#include <stdio.h>
int AddSequenceOfNumbersInStringToIntArray(int numbers[], char str[]) {
char* p = str;
int pos = 0, val;
//sscanf(const char *str, const char *format, ...)
int i = 0;
while (sscanf(p, "%d %n", &val, &pos) == 1) {
p += pos;
numbers[i++] = val;
}
return i;
}
int main(void)
{
int numbers[128] = { 0 };
char str[] = "1 2 78 900 1029 57382";
int size = AddSequenceOfNumbersInStringToIntArray(numbers, str);
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
/*
run:
1 2 78 900 1029 57382
*/