Mam nadzieję, że to wiele wyjaśni.
#include <stdio.h>
#include <string.h>
int main(void) {
char* liczby = "12 -3 64 2 78";
int
i = 0,
sign,
number,
size = strlen( liczby );
// wczytujesz kolejne znaki w tablicy liczby
while( i < size ){
// pomijasz spacje
while( liczby[i] == ' ' ) i++;
// sprawdzasz czy występuje znak minusa
sign = 0;
if( liczby[i] == '-' ){
sign = 1;
i++;
}
//wczytujesz liczbę
number = 0;
while( liczby[i] > 47 ) number = number*10 + liczby[i++] - 48;
i++;
// sprawdzasz czy wystąpił znak minusa
if( sign == 1 ){
number *= -1;
}
// wypisujesz liczbę
printf("%d ", number);
}
return 0;
}