Originariamente inviato da pietror87
int i=0;
char stringa[LUNGHEZZA_MAX+1];

scanf("%c",&stringa[i]); // leggo il primo carattere
while ( i<LUNGHEZZA_MAX && // se c'è spazio e
stringa[i]!=27 && // ... l'ultimo carattere letto non è ESC e
stringa[i]!='\0') { // ... l'ultimo carattere letto non è '\0', allora...
i++;
scanf("%c",&stringa[i]); // leggo il prossimo carattere
} stringa[i]='\0'; // metto '\0' come ultimo carattere

Per Esc qui usa 27, per invio che devo usare?
Personalmete preferirei utilizzare la versione con il
getchar(), anzi ancora meglio userei il getch().


Comunque per la scanf() devi modificare la riga :
stringa[i]!=27

con il valore
stringa[i]!=10