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
