ciao a tutti
questo il mio codice:
int fd = creat (*./prova",0600),
write(fd,"ciao ciao",9);
char buf[9];
read(fd,buf,9);
printf("%s\n",buf);
ho aperto il file "ciao ciao" esiste....ma dopo la printf mi stampa una linea vuota...perche'? :master:
ciao a tutti
questo il mio codice:
int fd = creat (*./prova",0600),
write(fd,"ciao ciao",9);
char buf[9];
read(fd,buf,9);
printf("%s\n",buf);
ho aperto il file "ciao ciao" esiste....ma dopo la printf mi stampa una linea vuota...perche'? :master:
Se non erro per i file UNIX c'è una sola posizione corrente nel file, condivisa per lettura e scrittura, e dopo la write ovviamente questo si trova alla fine del file. Per poter rileggere quanto scritto ti dovrai spostare all'inizio del file con lseek.
Amaro C++, il gusto pieno dell'undefined behavior.