#include <stdio.h>
int main(void) {
char* string = "asdac3.14asdasd";
int numLength = 0;
int isDouble = 0;
char* start = string;
while("не дошел до конца строки") {
double numDouble;
int numInt;
while("символы похожи на число") {
// логика для определения длины и типа числа
}
sscanf(
start,
isDouble ? "%*lf" : "%*d",
numLength, (isDouble ? &numDouble : &numInt)
// длина символов и адрес, куда писать число (зависит от типа числа)
);
start += numLength;a
}
return 0;
}