Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       memcmp — сравнить области памяти

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <string.h>

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

ОПИСАНИЕ

       Функция memcmp() сравнивает первые n байт (каждый как unsigned char) из областей памяти s1 и s2.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Функция  memcmp()  возвращает  целое  число  меньше,  равное,  или  выше  нуля  если  первые n байт из s1
       соответственно меньше, равны, или больше чем первые n байт из s2.

       Для возвращаемого значения, отличного от нуля, его знак определяется знаком разности первой  пары  байтов
       (которые unsigned char) в s1 и s2.

       Если n равно нулю, возвращаемое значение тоже ноль.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ memcmp()                                                            │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       C11, POSIX.1-2008.

ИСТОРИЯ

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

CAVEATS

       Do  not  use  memcmp()  to compare confidential data, such as cryptographic secrets, because the CPU time
       required for the comparison depends on the contents of the addresses compared, this function  is  subject
       to  timing-based  side-channel  attacks.   In  such  cases,  a  function  that  performs  comparisons  in
       deterministic time, depending only on n (the quantity of bytes compared)  is  required.   Some  operating
       systems  provide such a function (e.g., NetBSD's consttime_memequal()), but no such function is specified
       in POSIX.  On Linux, you may need to implement such a function yourself.

СМОТРИТЕ ТАКЖЕ

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

ПЕРЕВОД

       Русский  перевод  этой   страницы   руководства   разработал(и)   aereiae   <aereiae@gmail.com>,   Alexey
       <a.chepugov@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>,
       Dmitry  Bolkhovskikh  <d20052005@yandex.ru>,  ITriskTI <ITriskTI@gmail.com>, Max Is <ismax799@gmail.com>,
       Yuri  Kozlov  <yuray@komyakino.ru>,  Иван  Павлов   <pavia00@gmail.com>,   Малянов   Евгений   Викторович
       <maljanow@outlook.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот  перевод является свободной программной документацией; он распространяется на условиях общедоступной
       лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html  версии  3  или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если  вы  обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
       разработчику(ам)  по  его(их)  адресу(ам)  электронной  почты  или  по   адресу   списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                        memcmp(3)