Originariamente inviato da uranya
ma allora non esiste una funzione tipo readline()?
Nella libreria standard del C, no.
C'è da dire che una readline() esiste ma è una funzione specifica di Linux per leggere una linea dal terminale.

Originariamente inviato da uranya
devo per forza usare la fgets()??
fgets legge una linea da un certo stream. Esiste la gets che legge direttamente da STDIN ma è notoriamente "insicura" (non conosce la dimensione del buffer).

Forse fai prima a dirci cosa vuoi fare realmente. Quale è il problema?? Non ti va bene fgets?