Mersi. Atunci las sa intoarca 0 sau 1 si nu mai declar tipuri diferite pentru erori. Din ce am inteles eu din testul ferror_read_small ar fi trebuit sa fie setat errno, mai ales ca apelul de sistem read() intoarce totusi -1.
On Tue, Mar 26, 2019, 21:21 Paul Olaru <[email protected]> wrote: > Nu îți pasă de errno. read() original setează errno dar erorile injectate > de checker pe cazul respectiv nu setează. > > so_ferror doar spune dacă a fost o eroare (nu putem identifica de ce tip). > > On Tue, Mar 26, 2019, 20:57 George Diaconu via so <[email protected]> > wrote: > >> Salut, >> >> Cum spune si subiectul, apelul read(), in momentul in care intoarce >> -1, nu seteaza si errno. In manual scrie ca ar trebui sa il seteze, >> dar totusi, secventa urmatoare de cod: >> >> long rc = read(...) >> int code = errno; >> printf("%d\n", code); >> >> afiseaza intotdeauna 0, chiar si atunci cand read() intoarce -1. >> >> Am inclus "errno.h", si nu fac nimic ciudat cu errno (cum ar fi sa-l >> redeclar). >> Am doua intrebari: >> 1. Nu am inteles eu bine cand e setata valoarea intoarsa de errno? >> 2. E ok daca imi declar singur mai multe coduri de eroare si le intorc >> pe acestea in so_ferror()? >> >> Multumesc anticipat. >> _______________________________________________ >> http://ocw.cs.pub.ro/courses/so/info/lista-discutii > >
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
