OSDN Git Service

Update README
[linuxjm/LDP_man-pages.git] / release / man3 / mempcpy.3
1 .\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
2 .\"
3 .\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
4 .\" Distributed under GPL
5 .\" %%%LICENSE_END
6 .\"
7 .\" Heavily based on glibc infopages, copyright Free Software Foundation
8 .\"
9 .\" aeb, 2003, polished a little
10 .\"*******************************************************************
11 .\"
12 .\" This file was generated with po4a. Translate the source file.
13 .\"
14 .\"*******************************************************************
15 .\"
16 .\" Japanese Version Copyright (c) 2004 Yuichi SATO
17 .\"         all rights reserved.
18 .\" Translated Sat Aug 28 07:40:33 JST 2004
19 .\"         by Yuichi SATO <ysato444@yahoo.co.jp>
20 .\"
21 .TH MEMPCPY 3 2014\-03\-18 GNU "Linux Programmer's Manual"
22 .SH 名前
23 mempcpy, wmempcpy \- メモリー領域をコピーする
24 .SH 書式
25 .nf
26 \fB#define _GNU_SOURCE\fP         /* feature_test_macros(7) 参照 */
27 .br
28 \fB#include <string.h>\fP
29 .sp
30 \fBvoid *mempcpy(void *\fP\fIdest\fP\fB, const void *\fP\fIsrc\fP\fB, size_t \fP\fIn\fP\fB);\fP
31 .sp
32 \fB#define _GNU_SOURCE\fP         /* feature_test_macros(7) 参照 */
33 .br
34 \fB#include <wchar.h>\fP
35 .sp
36 \fBwchar_t *wmempcpy(wchar_t *\fP\fIdest\fP\fB, const wchar_t *\fP\fIsrc\fP\fB, size_t \fP\fIn\fP\fB);\fP
37 .fi
38 .SH 説明
39 \fBmempcpy\fP()  関数は \fBmemcpy\fP(3)  関数とほぼ同一である。 この関数は、 \fIsrc\fP で始まるオブジェクトから \fIn\fP
40 バイトを、 \fIdest\fP で指されるオブジェクトにコピーする。 ただし \fIdest\fP の値を返すのではなく、
41 最後に書き込まれたバイトの後に続くバイトへのポインターを返す。
42 .PP
43 この関数はいくつかのオブジェクトが 連続的なメモリーの場所にコピーされるような状況で役に立つ。
44 .PP
45 \fBwmempcpy\fP()  関数はこの関数と同じであるが、 \fIwchar_t\fP 型の引き数をとり、 \fIn\fP ワイド文字列をコピーする。
46 .SH 返り値
47 \fIdest\fP + \fIn\fP.
48 .SH バージョン
49 \fBmempcpy\fP()  は glibc バージョン 2.1 で初めて登場した。
50 .SH 属性
51 .SS "マルチスレッディング (pthreads(7) 参照)"
52 関数 \fBmempcpy\fP() と \fBwmempcpy\fP() はスレッドセーフである。
53 .SH 準拠
54 この関数は GNU による拡張である。
55 .SH 例
56 .nf
57 void *
58 combine (void *o1, size_t s1, void *o2, size_t s2)
59 {
60     void *result = malloc(s1 + s2);
61     if (result != NULL)
62         mempcpy(mempcpy(result, o1, s1), o2, s2);
63     return result;
64 .fi
65 .SH 関連項目
66 \fBmemccpy\fP(3), \fBmemcpy\fP(3), \fBmemmove\fP(3), \fBwmemcpy\fP(3)
67 .SH この文書について
68 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
69 である。プロジェクトの説明とバグ報告に関する情報は
70 http://www.kernel.org/doc/man\-pages/ に書かれている。