Ciao a tutti!! 
Ho un dubbio per quanto riguarda le stringhe prese tramite scanf.
In pratica quello che vorrei fare è questo
codice:
char *campo;
printf("Inserisci campo\n");
scanf("%s", campo);
Ovviamente, però, quando arrivo alla scanf, poichè per campo non è stata allocata memoria, il programma va in segmentation fault.
Quello che mi e vi chiedo quindi è se è possibile prendere da scanf una stringa di dimensione variabile e allocare dinamicamente memoria in base alla lunghezza della stringa letta.
Per esempio, se leggo una stringa di 10 caratteri, userò
codice:
char *campo = malloc(strlen(campo) + 1); //+1 per contenere il carattere '\0'
Oppure devo necessariamente dichiarare un array di caratteri di dimensione finita nel sorgente??
grazie mille a tutti