.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sat Jul 24 18:55:27 1993 by Rik Faith (faith@cs.unc.edu) .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH memcmp 3 "2 мая 2024 г." "Справочные страницы Linux 6.9.1" .SH ИМЯ memcmp — сравнить области памяти .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .P \fBint memcmp(const void \fP\fIs1\fP\fB[.\fP\fIn\fP\fB], const void \fP\fIs2\fP\fB[.\fP\fIn\fP\fB], size_t \fP\fIn\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBmemcmp\fP() сравнивает первые \fIn\fP байт (каждый как \fIunsigned char\fP) из областей памяти \fIs1\fP и \fIs2\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Функция \fBmemcmp\fP() возвращает целое число меньше, равное, или выше нуля если первые \fIn\fP байт из \fIs1\fP соответственно меньше, равны, или больше чем первые \fIn\fP байт из \fIs2\fP. .P Для возвращаемого значения, отличного от нуля, его знак определяется знаком разности первой пары байтов (которые \fIunsigned char\fP) в \fIs1\fP и \fIs2\fP. .P Если \fIn\fP равно нулю, возвращаемое значение тоже ноль. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBmemcmp\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ C11, POSIX.1\-2008. .SH ИСТОРИЯ POSIX.1\-2001, C89, SVr4, 4.3BSD. .SH CAVEATS Do not use \fBmemcmp\fP() 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 \fIn\fP (the quantity of bytes compared) is required. Some operating systems provide such a function (e.g., NetBSD's \fBconsttime_memequal\fP()), but no such function is specified in POSIX. On Linux, you may need to implement such a function yourself. .SH "СМОТРИТЕ ТАКЖЕ" \fBbstring\fP(3), \fBstrcasecmp\fP(3), \fBstrcmp\fP(3), \fBstrcoll\fP(3), \fBstrncasecmp\fP(3), \fBstrncmp\fP(3), \fBwmemcmp\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) aereiae , Alexey , Azamat Hackimov , Dmitriy S. Seregin , Dmitry Bolkhovskikh , ITriskTI , Max Is , Yuri Kozlov , Иван Павлов и Малянов Евгений Викторович . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .