Acquisire un valore senza usare scanf

di il
1 risposte

Acquisire un valore senza usare scanf

Salve ragazzi esiste un modo per acquisire un valore da tastiera senza usare scanf?? il problema di scanf è che mi va in crash in programma se non inserisco un tipo compatibile con quello della variabile io invece vorrei qualcosa capace di gestire gli errori di questo genere per rendere ancora più performanti i miei programmi grazie

1 Risposte

  • Re: Acquisire un valore senza usare scanf

    La tua è una domanda molto interessante e abbastanza rara da incontrare. Infatti, raramente i programmatori, purtroppo sia principianti che professionisti, si interessano al rispetto di un importante requisito non funzionale piuttosto maltrattato: la robustezza del software. Si, si. La qualità di cui parli è la robustezza e non la performance:)
    Veniamo al punto. Per eliminare il fastidioso problema di cui parli ci sono vari approcci:
    1) invece di usare la scanf con i tipi di dato atteso, la si può usare per leggere sempre una stringa fino a eol, e poi elaborare la stringa per ottenere l'input desiderato. L'utente inserisce il dato usando le funzioni di editing di linea messe a disposizione dal SO.
    2)puoi progettare e implementare un tuo editor di linea a prova di bomba leggendo l'input carattere per carattere gestendo quindi i vari caratteri speciali.
    3)Oppure puoi usare la libreria readline GNU che trovi qui:
    Ciao
Devi accedere o registrarti per scrivere nel forum
1 risposte