ciao raga
allora ho un problema con un esercizio
ho un file di testo con su scritto la lunghezza di ogni parola e laparola stessa
esempio
4ciao
5forum
7servizi
devo visualizzare la lunghezza ed dei primi 3 caratteri di ogni stringa contenuta nel file
e devo calcolare la somma dlle lunghezze delle stringhe
qundi in output
riga=4
cia
riga=5
for
riga=7
ser
somma totale parole = 16
purtroppo mi legge troppe righe in più
devo usare io a basso livello (read e write)
mi date una mano?
codice:#include<stdlib.h> #include<stddef.h> #include<stdio.h> #include<string.h> #include<unistd.h> #include<fcntl.h> #include<sys/types.h> #include<sys/stat.h> int fd,i,j,k,c; int tot=0; int riga=0; char stringa[50]; char num[10]; int main(int argc ,char **argv) { fd =open(argv[1],O_RDONLY,0777); { while(read(fd,num,1)>0) { i=atoi(num); printf("riga = %d\n",i); read(fd,stringa,i-1); write(1,stringa,3); write(1,"\n",2); tot=tot+i; } } printf(" somma totale parole = %d\n",tot); }

Rispondi quotando