Mi sorge una curiosità, ma se la stringa che volessi immettere non ha necessariamente una dimensione predefinita?

char stringa1[100] , stringa2[100];

Ovviamente se all'inizio del mio programma non inserisco la dimensione massima della stringa mi da errore, dicendomi di non aver inserito nessun valore nell'inizializzazione delle stringhe...

è possibile non dare un valore predefinito dell'array, o comunque un valore variabile in base alla stringa che si inserisce?

Altrimenti sarei costretto ad inserire un valore il più grande possibile negli array in modo da soddisfare stringhe di qualsiasi dimensione...