Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGiorgino Marini Modificato 11 anni fa
1
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write
2
#include #define perm 0644 //rw-r-r-- #define BUFSIZE 50 main () { char f1[40], f2[40]; int infile, outfile; int nread; char buffer [BUFSIZE]; printf ("File origine: "); scanf ("%s",&f1); printf ("File destinazione: "); scanf ("%s",&f2); infile = open (f1, O_RDONLY); outfile = creat (f2, perm); do { nread = read (infile, buffer, BUFSIZE); write (outfile, buffer, nread ); } while (nread!=0); close (infile); close (outfile); }
3
Esercizio (due programmi): Leggere da input dieci numeri interi e inserirli in un file Dato il file creato al punto precedente, calcolare la somma dei numeri interi che si trovano da una data posizione in poi nel file. La posizione deve essere letta da input (la posizione 0 indica il primo numero nel file, la posizione 1 il secondo numero memorizzato, etc.)
4
#include #define perm 0644 main () { char filename[40]; int fd; int num; int i; printf ("Nome del file: "); scanf ("%s",&filename); fd = creat (filename, perm); for (i = 0; i < 10; i++) { scanf ("%d",&num); write (fd, &num, sizeof(int)); } close (fd); }
5
#include #define perm 0644 main () { char filename[40]; int fd; int pos; int num; int somma = 0; printf ("Nome del file: "); scanf ("%s",&filename); printf ("Posizione di partenza: "); scanf ("%d",&pos); fd = open (filename, O_RDONLY); lseek(fd,pos*sizeof(int),SEEK_SET); while ( (read (fd, &num, sizeof(int))) > 0 ) somma = somma + num; printf ("Somma dei numeri dalla posizione %d in poi = %d\n", pos, somma); close (fd); }
6
Esercizi: Verificare che un file di testo sia palindromo (senza usare stringhe di appoggio, vale a dire si suppone che non si possa trasferire tutto il file in una stringa). Sommare tutti i numeri presenti in posizione pari in un file.
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.