Man page - memcmp(3)

Packages contains this manual

Available languages:

en fr pt_BR pl ko ja ru ro de

Manual

memcmp

NUME
BIBLIOTECA
SINOPSIS
DESCRIERE
VALOAREA RETURNATĂ
ATRIBUTE
STANDARDE
ISTORIC
LIMITĂRI
CONSULTAȚI ȘI
TRADUCERE

NUME

memcmp - compară zonele de memorie

BIBLIOTECA

Biblioteca C standard ( libc , -lc )

SINOPSIS

#include <string.h>

int memcmp(const void s1 [. n ], const void s2 [. n ], size_t n );

DESCRIERE

Funcția memcmp () compară primii n octeți (fiecare interpretat ca unsigned char ) din zonele de memorie s1 și s2 .

VALOAREA RETURNATĂ

Funcția memcmp () returnează un număr întreg mai mic, egal sau mai mare decât zero dacă se constată că primii n octeți din s1 sunt mai mici, se potrivesc sau sunt mai mari decât primii n octeți din s2 .

Pentru o valoare de returnare diferită de zero, semnul este determinat de semnul diferenței dintre prima pereche de octeți (interpretată ca unsigned char ) care diferă între s1 și s2 .

Dacă n este zero, valoarea de returnare este zero.

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes (7).

Image grohtml-663715-1.png

STANDARDE

C11, POSIX.1-2008.

ISTORIC

POSIX.1-2001, C89, SVr4, 4.3BSD.

LIMITĂRI

Nu utilizați memcmp () pentru a compara date confidențiale, cum ar fi secretele criptografice, deoarece timpul CPU necesar pentru comparație depinde de conținutul adreselor comparate, această funcție este supusă atacurilor pe canalul lateral bazate pe sincronizare. În astfel de cazuri, este necesară o funcție care realizează comparații în timp determinist, în funcție doar de n (cantitatea de octeți comparați). Unele sisteme de operare oferă o astfel de funcție (de exemplu, consttime_memequal () de la NetBSD), dar nu este specificată o astfel de funcție în POSIX. În Linux, este posibil să fie necesar să implementați dumneavoastră o astfel de funcție.

CONSULTAȚI ȘI

bstring (3), strcasecmp (3), strcmp (3), strcoll (3), strncasecmp (3), strncmp (3), wmemcmp (3)

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 .