.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de) .\" .\" SPDX-License-Identifier: GPL-1.0-or-later .\" .\" Heavily based on glibc infopages, copyright Free Software Foundation .\" .\" aeb, 2003, polished a little .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH mempcpy 3 "2 мая 2024 г." "Справочные страницы Linux 6.9.1" .SH НАИМЕНОВАНИЕ mempcpy, wmempcpy — копирует участок памяти .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP, \fI\-lc\fP) .SH ОБЗОР .nf \fB#define _GNU_SOURCE\fP /* см. feature_test_macros(7) */ \fB#include \fP .P \fBvoid *mempcpy(void \fP\fIdest\fP\fB[restrict .\fP\fIn\fP\fB], const void \fP\fIsrc\fP\fB[restrict .\fP\fIn\fP\fB],\fP \fB size_t \fP\fIn\fP\fB);\fP .P \fB#define _GNU_SOURCE\fP /* смотрите feature_test_macros(7) */ \fB#include \fP .P \fBwchar_t *wmempcpy(wchar_t \fP\fIdest\fP\fB[restrict .\fP\fIn\fP\fB],\fP \fB const wchar_t \fP\fIsrc\fP\fB[restrict .\fP\fIn\fP\fB],\fP \fB size_t \fP\fIn\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBmempcpy\fP() почти идентична \fBmemcpy\fP(3). Она копирует \fIn\fP байт из \fIsrc\fP в \fIdest\fP, но вместо возвращения значения \fIdest\fP, она возвращает указатель на байт, следующий за последним записанным байтом. .P Она удобна если требуется скопировать несколько участков памяти в другой участок последовательно, чтобы они располагались в нем друг за другом. .P \fBwmempcpy\fP() делает тоже самое, но принимает \fIwchar_t\fP тип аргументов и копирует \fIn\fP широких символов. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" \fIdest\fP + \fIn\fP. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBmempcpy\fP(), \fBwmempcpy\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ GNU. .SH ИСТОРИЯ glibc 2.1. .SH ПРИМЕРЫ .EX void * combine(void *o1, size_t s1, void *o2, size_t s2) { void *result = malloc(s1 + s2); if (result != NULL) mempcpy(mempcpy(result, o1, s1), o2, s2); return result; } .EE .SH "СМОТРИТЕ ТАКЖЕ" \fBmemccpy\fP(3), \fBmemcpy\fP(3), \fBmemmove\fP(3), \fBwmemcpy\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) aereiae , Alexey , Azamat Hackimov , Dmitriy S. Seregin , Dmitry Bolkhovskikh , ITriskTI , Max Is , Yuri Kozlov , Иван Павлов , Малянов Евгений Викторович и Kirill Rekhov . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .