informatica:sol:laboratorio16:esercitazionia:esercitazione2
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:laboratorio16:esercitazionia:esercitazione2 [01/03/2016 alle 05:46 (10 anni fa)] – Massimo Torquati | informatica:sol:laboratorio16:esercitazionia:esercitazione2 [02/03/2016 alle 20:45 (10 anni fa)] (versione attuale) – Massimo Torquati | ||
|---|---|---|---|
| Linea 1: | Linea 1: | ||
| ====== Esercitazione 2 ====== | ====== Esercitazione 2 ====== | ||
| - | Stringhe e libreria standard di IO, creazione di librerie statiche. | + | Stringhe e libreria standard di IO, creazione di librerie statiche, uso di '' |
| - | Cercare di completare tutti gli esercizi durante le ore di laboratorio e nel caso come homework.\\ | ||
| ===== Esercizio 1: tokenizer ===== | ===== Esercizio 1: tokenizer ===== | ||
| - | Scrivere un programma che data una stringa come argomento, stampa a video (' | + | Scrivere un programma che data una stringa come argomento, stampa a video ('' |
| < | < | ||
| void tokenizer(char *stringa, FILE *out); | void tokenizer(char *stringa, FILE *out); | ||
| Linea 22: | Linea 21: | ||
| ===== Esercizio 2: tokenizer_r ===== | ===== Esercizio 2: tokenizer_r ===== | ||
| - | Scrivere una seconda versione del programma precedente che implementa la funzione ' | + | Scrivere una seconda versione del programma precedente che implementa la funzione ' |
| - | NOTA: se si utilizza l' | + | NOTA: se si utilizza l' |
| ===== Esercizio 3: tokenizer_rfile ===== | ===== Esercizio 3: tokenizer_rfile ===== | ||
| Linea 32: | Linea 31: | ||
| ===== Esercizio 4: valgrind ===== | ===== Esercizio 4: valgrind ===== | ||
| - | Verificare la correttezza degli accessi in memoria utilizzando ' | + | Verificare la correttezza degli accessi in memoria utilizzando |
| + | Valgrind permette, fra l' | ||
| + | |||
| + | Passi: | ||
| + | * compilare il file da verificare con opzione '' | ||
| + | * eseguire il programma con '' | ||
| + | < | ||
| + | bash$ valgrind ./prova | ||
| + | </ | ||
| + | in questo modo, a schermo verranno riportare le infrazioni rilevate. Ad esempio, //invalid read// o //invalid write// sono accessi in lettura o scrittura a memoria non allocata o gia' deallocata. | ||
| + | |||
| + | Se si specifica l' | ||
| ===== Esercizio 5: libtokenizer.a ===== | ===== Esercizio 5: libtokenizer.a ===== | ||
informatica/sol/laboratorio16/esercitazionia/esercitazione2.1456811176.txt.gz · Ultima modifica: 01/03/2016 alle 05:46 (10 anni fa) da Massimo Torquati
