Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
| informatica:sol:laboratorio21:esercitazionib:esercitazione2 [24/02/2021 alle 13:21 (6 anni fa)] – Massimo Torquati | informatica:sol:laboratorio21:esercitazionib:esercitazione2 [25/02/2021 alle 15:25 (6 anni fa)] (versione attuale) – Massimo Torquati |
|---|
| ===== Esercizio 2: puntatori a funzioni ===== | ===== Esercizio 2: puntatori a funzioni ===== |
| |
| Estendere l'esercizio 1 associando ad ogni opzione del main una funzione che ne faccia la gestione e la stampa sullo standard output. Ad esempio, la gestione dell'opzione '-n' viene fatta dalla funzione 'arg_n(const char*)' la quale convertirà l'argomento associato all'opzione ad intero e farà la stampa sullo standard output. | Estendere l'esercizio 1 associando ad ogni opzione del main una funzione che ne faccia la gestione e la stampa sullo standard output. Ad esempio, la gestione dell'opzione '-n' viene fatta dalla funzione 'arg_n(const char*)' la quale convertirà l'argomento associato all'opzione ad intero e farà la stampa sullo standard output, ritornado -1 in caso di errore e 0 in caso di successo. |
| Memorizzare tali funzioni in un vettore con nome 'V'. Utilizzare completando il seguente frammento di codice main. | Memorizzare tali funzioni in un vettore con nome 'V'. Utilizzare completando il seguente frammento di codice main. |
| |
| </code> | </code> |
| |
| ===== Esercizio 4: valgrind ===== | ===== Esercizio 5: valgrind ===== |
| |
| Verificare la correttezza degli accessi in memoria utilizzando ''valgrind'' dei programmi realizzati nell'esercizio 1 e 2. Verificare che non ci siano "memory leaks" all'uscita del programma. | Verificare la correttezza degli accessi in memoria utilizzando ''valgrind'' dei programmi realizzati nell'esercizi precedenti. Verificare che non ci siano "memory leaks" all'uscita del programma. |
| |
| Valgrind permette, fra l'altro, di capire se le variabili sono inizializzate prima del loro uso, se accediamo a memoria gia' deallocata o mai allocata o a zone non inizializzate. | Valgrind permette, fra l'altro, di capire se le variabili sono inizializzate prima del loro uso, se accediamo a memoria gia' deallocata o mai allocata o a zone non inizializzate. |