On Sun, Mar 24, 2002 at 10:17:49AM +0100, Nando Santagata wrote:
> On Sun, Mar 24, 2002 at 09:14:01AM +0100, Simone Saravalli wrote:
> > Dunque, per fare quanto chiedi puoi usare una semplice scanf, oppure
> > la funzione di libreria itoa, che funziona in modo opposto ad atoi().
>
> Attenzione che itoa non e` Standard C e quindi potrebbe non esistere
> in altri ambienti.
Infatti non c'è. Probabilmente è contenuta in una libreria che non ho
installato.
Ho un'altra domanda che riguarda il C, scusate.
Ho un ciclo così
switch (in=getchar())
{
case '3': printf("Descrizione dell'utente: ");
fgets(temp,MAXBUFSIZE,stdin);
sscanf(data.desc,"%s",temp);
system("clear");
printf("%s", temp);
printf("%s",data.desc);
prox=4;
break;
}
ovviamente con altri case, che non riporto.
Se lo eseguo, non mi chiede l'input (richiesto da fgets) e va avanti.
Siccome lo standard input è una pipe, ho pensato che non fosse stata svuotata
da getchar e fgets prenda
il rimanente, fermandosi al \n.
Però non so come risolvere il problema.
Un'altra cosa: gcc mi dice che gets è pericolo e non va usato. però fgets
prende anche il ritorno a capo,
ed io non lo voglio. Devo farmi una mia funzione che elimina i \n dal raccolto
oppure c'è qualche
rimedio?
Grazie anticipate.
|