|
L'utilizzo di cin in C++ come l'utilizzo di scanf in C non è sicuro. Se vuoi essere sicuro di quello che stai leggendo la cosa migliore è scrivere una tua funzione per l'acquisizione dallo standard input. Acquisisci caratteri, effettui un controllo sulla validità di quanto hai letto e successivamente componi il tipo di dato che devi leggere oppure notifichi l'errore in input.
Io ho sempre fatto così (magari sbagliando) visto che non sono a conoscenza di funzioni che controllino l'input come si deve.
Se la chiamata di paperino() è innestata a pippo() la soluzione è banale, basta dichiarare un parametro in pippo(). Se così non fosse e la chiamata di pippo() e paperino() fossero sequenziali l'ideale è rendere k locale al chiamante di entrambe le funzioni che poi lo riceveranno come parametro in ingresso.
Ovviamente dovresti utilizzare un passaggio per referenza oppure un puntatore se le funzioni che utilizzi devono scrivere k e non solo leggerlo.
Ultima modifica di sirus : 19-12-2007 alle 20:16.
|