OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man3 / strcpy.3
index f26db63..cc1df55 100644 (file)
 .\" 2007-06-15, Marc Boyer <marc.boyer@enseeiht.fr> + mtk
 .\"     Improve discussion of strncpy().
 .\"
-.\" Japanese Version Copyright (c) 1997 YOSHINO Takashi
-.\"       all rights reserved.
-.\" Translated Mon Jan 20 22:35:40 JST 1997
-.\"       by YOSHINO Takashi <yoshino@civil.jcn.nihon-u.ac.jp>
+.\"*******************************************************************
 .\"
-.\" Japanese Version Last Modified Sun Sep 5 01:48:52 1999
-.\"     by Kentaro Shirakata <argrath@yo.rim.or.jp>
-.\" Modified for 'null/NUL translation' Sat 5 Jan 2002
-.\"     by NAKANO Takeo <nakano@apm.seikei.ac.jp
-.\" Updated 2007-07-04, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.58
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.TH STRCPY 3  2010-09-20 "GNU" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH STRCPY 3 2010\-09\-20 GNU "Linux Programmer's Manual"
 .SH 名前
 strcpy, strncpy \- 文字列をコピーする
 .SH 書式
 .nf
-.B #include <string.h>
+\fB#include <string.h>\fP
 .sp
-.BI "char *strcpy(char *" dest ", const char *" src );
+\fBchar *strcpy(char *\fP\fIdest\fP\fB, const char *\fP\fIsrc\fP\fB);\fP
 .sp
-.BI "char *strncpy(char *" dest ", const char *" src ", size_t " n );
+\fBchar *strncpy(char *\fP\fIdest\fP\fB, const char *\fP\fIsrc\fP\fB, size_t \fP\fIn\fP\fB);\fP
 .fi
 .SH 説明
-.BR strcpy ()
-関数は
-\fIsrc\fP が指す文字列を末尾のヌルバイト (\(aq\\0\(aq) も含めて
-\fIdest\fP が指すバッファにコピーする。
-二つの文字列は重なってはならない。受け側の文字列 \fIdest\fP は
-コピーを受け取るのに十分な大きさでなければならない。
+\fBstrcpy\fP()  関数は \fIsrc\fP が指す文字列を末尾のヌルバイト (\(aq\e0\(aq) も含めて \fIdest\fP
+が指すバッファにコピーする。 二つの文字列は重なってはならない。受け側の文字列 \fIdest\fP は コピーを受け取るのに十分な大きさでなければならない。
 .PP
-.BR strncpy ()
-関数も同様だが、
-\fIsrc\fP のうち最大でも \fIn\fP バイトしかコピーされない点が異なる。
-.BR 警告 :
-\fIsrc\fP の最初の \fIn\fP バイトの中にヌルバイトがない場合、
-\fIdest\fP に格納される文字列はヌルで終端されないことになる。
+\fBstrncpy\fP()  関数も同様だが、 \fIsrc\fP のうち最大でも \fIn\fP バイトしかコピーされない点が異なる。 \fB警告\fP: \fIsrc\fP
+の最初の \fIn\fP バイトの中にヌルバイトがない場合、 \fIdest\fP に格納される文字列はヌルで終端されないことになる。
 .PP
-.I src
-の長さが
-.I n
-よりも短い場合、
-.BR strncpy ()
-は
-.I dest
-の残りをヌルバイトで埋める。
+\fIsrc\fP の長さが \fIn\fP よりも短い場合、 \fBstrncpy\fP()  は \fIdest\fP の残りをヌルバイトで埋める。
 .PP
-.BR strncpy ()
-の簡単な実装は以下のような感じであろう:
+\fBstrncpy\fP()  の簡単な実装は以下のような感じであろう:
 .in +4n
 .nf
 
@@ -86,64 +64,39 @@ strncpy(char *dest, const char *src, size_t n)
 {
     size_t i;
 
-    for (i = 0; i < n && src[i] != \(aq\\0\(aq; i++)
+    for (i = 0; i < n && src[i] != \(aq\e0\(aq; i++)
         dest[i] = src[i];
     for ( ; i < n; i++)
-        dest[i] = \(aq\\0\(aq;
+        dest[i] = \(aq\e0\(aq;
 
     return dest;
 }
 .fi
 .in
 .SH 返り値
-.BR strcpy ()
-関数と
-.BR strncpy ()
-関数は
-受け側の文字列\fIdest\fPへのポインタを返す。
+\fBstrcpy\fP()  関数と \fBstrncpy\fP()  関数は 受け側の文字列\fIdest\fPへのポインタを返す。
 .SH 準拠
 SVr4, 4.3BSD, C89, C99.
 .SH 注意
-.BR strncpy ()
-は効率的でなく間違いを起こしやすいと考えるプログラマもいるだろう。
-プログラマが \fIdest\fP の大きさが \fIsrc\fP の長さよりも
-大きいことを知っている (つまり、そのことをチェックするコードを
-書いている) 場合は、
-.B strcpy()
-を使うことができる。
+\fBstrncpy\fP()  は効率的でなく間違いを起こしやすいと考えるプログラマもいるだろう。 プログラマが \fIdest\fP の大きさが \fIsrc\fP
+の長さよりも 大きいことを知っている (つまり、そのことをチェックするコードを 書いている) 場合は、 \fBstrcpy()\fP を使うことができる。
 
-\fIsrc\fP の最初の \fIn\fP 文字に終端のヌルバイトがない場合、
-.BR strncpy ()
-は \fIdest\fP に終端されていない文字列を生成する。
-プログラマは間違いを防止するために、
-以下のように強制的に終端を行うことがよくある。
+\fIsrc\fP の最初の \fIn\fP 文字に終端のヌルバイトがない場合、 \fBstrncpy\fP()  は \fIdest\fP
+に終端されていない文字列を生成する。 プログラマは間違いを防止するために、 以下のように強制的に終端を行うことがよくある。
 .in +4n
 .nf
 
 strncpy(buf, str, n);
 if (n > 0)
-    buf[n \- 1]= \(aq\\0\(aq;
+    buf[n \- 1]= \(aq\e0\(aq;
 .fi
 .in
 .SH バグ
-.BR strcpy ()
-の受け側の文字列が十分な大きさでない場合、何が起こるかわからない。
-固定長文字列を溢れさせるのは、マシンの制御を掌中に収めるために
-クラッカーが好んで使うテクニックである。
-プログラムでデータをバッファに読み込んだりコピーしたりする場合には、
-必ずまず最初に十分な大きさがあるかどうかをチェックする必要がある。
-プログラマがオーバーフローが不可能だと示せる場合には
-このチェックは不要かもしれないが、十分注意すること。
-長い間には、不可能だったことが可能になるような方法でプログラムが
-変更されることもあるからだ。
+\fBstrcpy\fP()  の受け側の文字列が十分な大きさでない場合、何が起こるかわからない。
+固定長文字列を溢れさせるのは、マシンの制御を掌中に収めるために クラッカーが好んで使うテクニックである。
+プログラムでデータをバッファに読み込んだりコピーしたりする場合には、 必ずまず最初に十分な大きさがあるかどうかをチェックする必要がある。
+プログラマがオーバーフローが不可能だと示せる場合には このチェックは不要かもしれないが、十分注意すること。
+長い間には、不可能だったことが可能になるような方法でプログラムが 変更されることもあるからだ。
 .SH 関連項目
-.BR bcopy (3),
-.BR memccpy (3),
-.BR memcpy (3),
-.BR memmove (3),
-.BR stpcpy (3),
-.BR stpncpy (3),
-.BR strdup (3),
-.BR string (3),
-.BR wcscpy (3),
-.BR wcsncpy (3)
+\fBbcopy\fP(3), \fBmemccpy\fP(3), \fBmemcpy\fP(3), \fBmemmove\fP(3), \fBstpcpy\fP(3),
+\fBstpncpy\fP(3), \fBstrdup\fP(3), \fBstring\fP(3), \fBwcscpy\fP(3), \fBwcsncpy\fP(3)