Dopo una serie di tentativi sono riuscita a così:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LUNG 512
int main() {
char *s = calloc(LUNG, sizeof(char));
const char spz[2] = " ";
char *token;
fgets(s, LUNG, stdin);
token = strtok(s, spz);
while( token != NULL ) {
printf( "%s\n", token );
token = strtok(NULL, spz);
}
free(s);
return (0);
}
Però la calloc me l’hanno sconsigliata di usare perché devo creare un programma abbastanza ottimizzato. Avete dei suggerimenti su come modificare il codice e ottimizzarlo sia a livello di tempo che di spazio?