informatica:sol:laboratorio15: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:laboratorio15:esercitazionia:esercitazione2 [04/03/2015 alle 14:38 (10 anni fa)] – [Esercizio 2: verificare gli accessi in memoria con valgrind] Massimo Torquati | informatica:sol:laboratorio15:esercitazionia:esercitazione2 [17/03/2015 alle 05:44 (10 anni fa)] (versione attuale) – [Esercizio 6] Massimo Torquati | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
====== Esercitazione 2 ====== | ====== Esercitazione 2 ====== | ||
- | Ancora esercizi su C e su libreria standard di IO. Tool: mtrace e valgrind. | + | Ancora esercizi su C e su libreria standard di IO. Tools: '' |
Cercare di completare tutti gli esercizi durante le ore di laboratorio e nel caso come homework.\\ | Cercare di completare tutti gli esercizi durante le ore di laboratorio e nel caso come homework.\\ | ||
Linea 31: | Linea 31: | ||
===== Esercizio 2: verificare gli accessi in memoria con valgrind ===== | ===== Esercizio 2: verificare gli accessi in memoria con valgrind ===== | ||
- | Verificare la correttezza degli accessi in memoria degli esercizi dell' | + | Verificare la correttezza degli accessi in memoria degli esercizi dell'[[esercitazione1|Assegnamento1]] utilizzando '' |
- | Questo strumento permette fra l' | + | Questo strumento permette fra l' |
Per fare questo procedere come segue: | Per fare questo procedere come segue: | ||
Linea 43: | Linea 42: | ||
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. | 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. | ||
===== Esercizio 3 ===== | ===== Esercizio 3 ===== | ||
+ | |||
+ | Scrivere un programma che implementa l' | ||
+ | (mycat file1 [file2 ...] ). | ||
+ | |||
===== Esercizio 4 ===== | ===== Esercizio 4 ===== | ||
+ | Scrivere un programma che prende in ingresso un intero (piccolo, es. < | ||
+ | di 512x512 elementi '' | ||
+ | Inizializzare tale matrice (M) in modo arbitrario (ad esempio M(i,j) = (i+j)/ | ||
+ | Fare quindi il dump della matrice in formato binario su un file il cui nome è ' | ||
+ | Rileggere quindi la matrice dal file ' | ||
+ | da quella di partenza (M2). Al termine dell' | ||
+ | con la funzione di libreria '' | ||
===== Esercizio 5 ===== | ===== Esercizio 5 ===== | ||
+ | Scrivere un programma che prende in ingresso come parametro un nome di un file | ||
+ | (ad esempio input.txt). Il file è un file testuale che contiene un certo numero di righe. | ||
+ | Leggere tutte le righe del file e costruire un' | ||
+ | concatenazione di ogni striga del file tra loro separate da uno spazio. | ||
+ | Scrivere la stringa cosi ottenuta in un file che ha lo stesso nome del file in input ma con estensione " | ||
===== Esercizio 6 ===== | ===== Esercizio 6 ===== | ||
+ | Realizzare l' | ||
+ | array di N elementi con le seguenti modifiche/ | ||
+ | * gli elementi dell' | ||
+ | |||
+ | * le funzioni ' | ||
+ | |||
+ | Creare il codice oggetto dei due file ' | ||
+ | |||
+ | Un possibile file di input è il seguente:\\ | ||
+ | -1\\ | ||
+ | 2\\ | ||
+ | +3\\ | ||
+ | 0\\ | ||
+ | 120\\ | ||
+ | |||
===== Esercizio 7 ===== | ===== Esercizio 7 ===== | ||
+ | Scrivere un programma che realizzi l' | ||
+ | limitatamente alle opzioni -l e -w (man 1 wc). | ||
+ | L' | ||
+ | di parole nel file. Se non vengono passate opzioni, il programma stampa sia il numero | ||
+ | di linee che il numero di parole del/dei file i cui nomi sono passati come argomento | ||
+ | (mywc [-l -w] file1 [file2 file3 ....]). | ||
informatica/sol/laboratorio15/esercitazionia/esercitazione2.1425479895.txt.gz · Ultima modifica: 04/03/2015 alle 14:38 (10 anni fa) da Massimo Torquati