table of contents
- bookworm-backports 4.24.0-2~bpo12+1
- testing 4.24.0-2
- unstable 4.24.0-2
perror(3) | Library Functions Manual | perror(3) |
NUME¶
perror - imprimă (afișează) un mesaj de eroare de sistem
BIBLIOTECA¶
Biblioteca C standard (libc, -lc)
SINOPSIS¶
#include <stdio.h>
void perror(const char *s);
#include <errno.h>
int errno; /* Nu este declarat în acest mod; a se vedea errno(3) */
[[depreciat]] const char *const sys_errlist[]; [[depreciat]] int sys_nerr;
sys_errlist, sys_nerr:
De la glibc 2.19 la glibc 2.31:
_DEFAULT_SOURCE
glibc 2.19 și versiunile anterioare:
_BSD_SOURCE
DESCRIERE¶
Funcția perror() produce un mesaj la ieșirea de eroare standard care descrie ultima eroare întâlnită în timpul unui apel la o funcție de sistem sau de bibliotecă.
Mai întâi (dacă s nu este NULL și *s nu este un octet nul („\0”)), se imprimă șirul de argumente s, urmat de două puncte și un spațiu. Apoi un mesaj de eroare corespunzător valorii curente a lui errno și o linie nouă.
Pentru a fi de cea mai mare utilitate, șirul de argumente trebuie să includă numele funcției care a produs eroarea.
Lista globală de erori sys_errlist[], care poate fi indexată de errno, poate fi utilizată pentru a obține mesajul de eroare fără linia nouă. Cel mai mare număr de mesaj furnizat în tabel este sys_nerr-1. Fiți atenți atunci când accesați direct această listă, deoarece este posibil ca noile valori de eroare să nu fi fost adăugate la sys_errlist[]. Utilizarea lui sys_errlist[] este în prezent depreciată; utilizați în schimb strerror(3).
Atunci când un apel de sistem eșuează, acesta returnează de obicei -1 și configurează variabila errno la o valoare care descrie ce nu a mers bine; (aceste valori pot fi găsite în <errno.h>). Multe funcții de bibliotecă procedează la fel. Funcția perror() are rolul de a traduce acest cod de eroare într-o formă inteligibilă pentru oameni. Rețineți că errno este nedefinită după un apel de sistem sau un apel de funcție de bibliotecă reușit: acest apel poate foarte bine să modifice această variabilă, chiar dacă reușește, de exemplu pentru că a folosit în mod intern o altă funcție de bibliotecă care a eșuat. Astfel, dacă un apel eșuat nu este urmat imediat de un apel la perror(), valoarea lui errno trebuie salvată.
VERSIUNI¶
Începând cu glibc 2.32, declarațiile sys_errlist și sys_nerr nu mai sunt expuse de <stdio.h>.
ATRIBUTE¶
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare |
perror() | Siguranța firelor | MT-Safe race:stderr |
STANDARDE¶
perror(), errno: POSIX.1-2001, POSIX.1-2008, C99, 4.3BSD.
Funcțiile externe sys_nerr și sys_errlist derivă din BSD, dar nu sunt specificate în POSIX.1.
NOTE¶
Funcțiile externe sys_nerr și sys_errlist sunt definite de glibc, dar în <stdio.h>.
CONSULTAȚI ȘI¶
TRADUCERE¶
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
5 februarie 2023 | Pagini de manual de Linux 6.03 |