OSDN Git Service

3318e20c4be63255758f4dd71a50e3dba3e22271
[linuxjm/LDP_man-pages.git] / po4a / string / po / string.pot
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 #, fuzzy
7 msgid ""
8 msgstr ""
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2013-03-22 01:07+0900\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
14 "Language: \n"
15 "MIME-Version: 1.0\n"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: 8bit\n"
18
19 #. type: TH
20 #: build/C/man3/bcmp.3:31
21 #, no-wrap
22 msgid "BCMP"
23 msgstr ""
24
25 #. type: TH
26 #: build/C/man3/bcmp.3:31 build/C/man3/bzero.3:31
27 #, no-wrap
28 msgid "2008-08-06"
29 msgstr ""
30
31 #. type: TH
32 #: build/C/man3/bcmp.3:31 build/C/man3/bcopy.3:33 build/C/man3/bzero.3:31
33 #, no-wrap
34 msgid "Linux"
35 msgstr ""
36
37 #. type: TH
38 #: build/C/man3/bcmp.3:31 build/C/man3/bcopy.3:33 build/C/man3/bstring.3:32 build/C/man3/bzero.3:31 build/C/man3/ffs.3:33 build/C/man3/index.3:31 build/C/man3/memccpy.3:30 build/C/man3/memchr.3:32 build/C/man3/memcmp.3:30 build/C/man3/memcpy.3:30 build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30 build/C/man3/memmove.3:30 build/C/man3/mempcpy.3:10 build/C/man3/memset.3:30 build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14 build/C/man3/strcasecmp.3:30 build/C/man3/strcat.3:32 build/C/man3/strchr.3:33 build/C/man3/strcmp.3:32 build/C/man3/strcoll.3:30 build/C/man3/strcpy.3:35 build/C/man3/strdup.3:31 build/C/man3/strerror.3:39 build/C/man3/strfry.3:30 build/C/man3/string.3:30 build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13 build/C/man3/strpbrk.3:30 build/C/man3/strsep.3:33 build/C/man3/strsignal.3:30 build/C/man3/strspn.3:30 build/C/man3/strstr.3:33 build/C/man3/strtok.3:30 build/C/man3/strverscmp.3:25 build/C/man3/strxfrm.3:30
39 #, no-wrap
40 msgid "Linux Programmer's Manual"
41 msgstr ""
42
43 #. type: SH
44 #: build/C/man3/bcmp.3:32 build/C/man3/bcopy.3:34 build/C/man3/bstring.3:33 build/C/man3/bzero.3:32 build/C/man3/ffs.3:34 build/C/man3/index.3:32 build/C/man3/memccpy.3:31 build/C/man3/memchr.3:33 build/C/man3/memcmp.3:31 build/C/man3/memcpy.3:31 build/C/man3/memfrob.3:31 build/C/man3/memmem.3:31 build/C/man3/memmove.3:31 build/C/man3/mempcpy.3:11 build/C/man3/memset.3:31 build/C/man3/stpcpy.3:26 build/C/man3/stpncpy.3:15 build/C/man3/strcasecmp.3:31 build/C/man3/strcat.3:33 build/C/man3/strchr.3:34 build/C/man3/strcmp.3:33 build/C/man3/strcoll.3:31 build/C/man3/strcpy.3:36 build/C/man3/strdup.3:32 build/C/man3/strerror.3:40 build/C/man3/strfry.3:31 build/C/man3/string.3:31 build/C/man3/strlen.3:31 build/C/man3/strnlen.3:14 build/C/man3/strpbrk.3:31 build/C/man3/strsep.3:34 build/C/man3/strsignal.3:31 build/C/man3/strspn.3:31 build/C/man3/strstr.3:34 build/C/man3/strtok.3:31 build/C/man3/strverscmp.3:26 build/C/man3/strxfrm.3:31
45 #, no-wrap
46 msgid "NAME"
47 msgstr ""
48
49 #. type: Plain text
50 #: build/C/man3/bcmp.3:34
51 msgid "bcmp - compare byte sequences"
52 msgstr ""
53
54 #. type: SH
55 #: build/C/man3/bcmp.3:34 build/C/man3/bcopy.3:36 build/C/man3/bstring.3:36 build/C/man3/bzero.3:34 build/C/man3/ffs.3:36 build/C/man3/index.3:34 build/C/man3/memccpy.3:33 build/C/man3/memchr.3:35 build/C/man3/memcmp.3:33 build/C/man3/memcpy.3:33 build/C/man3/memfrob.3:33 build/C/man3/memmem.3:33 build/C/man3/memmove.3:33 build/C/man3/mempcpy.3:13 build/C/man3/memset.3:33 build/C/man3/stpcpy.3:28 build/C/man3/stpncpy.3:17 build/C/man3/strcasecmp.3:33 build/C/man3/strcat.3:35 build/C/man3/strchr.3:36 build/C/man3/strcmp.3:35 build/C/man3/strcoll.3:33 build/C/man3/strcpy.3:38 build/C/man3/strdup.3:34 build/C/man3/strerror.3:42 build/C/man3/strfry.3:33 build/C/man3/string.3:36 build/C/man3/strlen.3:33 build/C/man3/strnlen.3:16 build/C/man3/strpbrk.3:33 build/C/man3/strsep.3:36 build/C/man3/strsignal.3:33 build/C/man3/strspn.3:33 build/C/man3/strstr.3:36 build/C/man3/strtok.3:33 build/C/man3/strverscmp.3:28 build/C/man3/strxfrm.3:33
56 #, no-wrap
57 msgid "SYNOPSIS"
58 msgstr ""
59
60 #. type: Plain text
61 #: build/C/man3/bcmp.3:37 build/C/man3/bcopy.3:39 build/C/man3/bzero.3:37 build/C/man3/ffs.3:39 build/C/man3/index.3:37 build/C/man3/strcasecmp.3:36 build/C/man3/string.3:39
62 #, no-wrap
63 msgid "B<#include E<lt>strings.hE<gt>>\n"
64 msgstr ""
65
66 #. type: Plain text
67 #: build/C/man3/bcmp.3:39
68 #, no-wrap
69 msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
70 msgstr ""
71
72 #. type: SH
73 #: build/C/man3/bcmp.3:40 build/C/man3/bcopy.3:42 build/C/man3/bstring.3:63 build/C/man3/bzero.3:40 build/C/man3/ffs.3:74 build/C/man3/index.3:42 build/C/man3/memccpy.3:39 build/C/man3/memchr.3:54 build/C/man3/memcmp.3:39 build/C/man3/memcpy.3:39 build/C/man3/memfrob.3:40 build/C/man3/memmem.3:41 build/C/man3/memmove.3:39 build/C/man3/mempcpy.3:27 build/C/man3/memset.3:39 build/C/man3/stpcpy.3:53 build/C/man3/stpncpy.3:42 build/C/man3/strcasecmp.3:41 build/C/man3/strcat.3:43 build/C/man3/strchr.3:49 build/C/man3/strcmp.3:43 build/C/man3/strcoll.3:39 build/C/man3/strcpy.3:46 build/C/man3/strdup.3:77 build/C/man3/strerror.3:67 build/C/man3/strfry.3:41 build/C/man3/string.3:90 build/C/man3/strlen.3:39 build/C/man3/strnlen.3:41 build/C/man3/strpbrk.3:39 build/C/man3/strsep.3:50 build/C/man3/strsignal.3:60 build/C/man3/strspn.3:41 build/C/man3/strstr.3:48 build/C/man3/strtok.3:52 build/C/man3/strverscmp.3:36 build/C/man3/strxfrm.3:39
74 #, no-wrap
75 msgid "DESCRIPTION"
76 msgstr ""
77
78 #. type: Plain text
79 #: build/C/man3/bcmp.3:56
80 msgid ""
81 "The B<bcmp>()  function compares the two byte sequences I<s1> and I<s2> of "
82 "length I<n> each.  If they are equal, and in particular if I<n> is zero, "
83 "B<bcmp>()  returns 0.  Otherwise it returns a nonzero result."
84 msgstr ""
85
86 #. type: SH
87 #: build/C/man3/bcmp.3:56 build/C/man3/bcopy.3:52 build/C/man3/bzero.3:48 build/C/man3/ffs.3:87 build/C/man3/index.3:55 build/C/man3/memccpy.3:47 build/C/man3/memchr.3:105 build/C/man3/memcmp.3:45 build/C/man3/memcpy.3:48 build/C/man3/memfrob.3:53 build/C/man3/memmem.3:47 build/C/man3/memmove.3:53 build/C/man3/mempcpy.3:53 build/C/man3/memset.3:44 build/C/man3/stpcpy.3:61 build/C/man3/stpncpy.3:61 build/C/man3/strcasecmp.3:54 build/C/man3/strcat.3:97 build/C/man3/strchr.3:81 build/C/man3/strcmp.3:56 build/C/man3/strcoll.3:51 build/C/man3/strcpy.3:97 build/C/man3/strdup.3:104 build/C/man3/strerror.3:136 build/C/man3/strfry.3:49 build/C/man3/strlen.3:44 build/C/man3/strnlen.3:51 build/C/man3/strpbrk.3:44 build/C/man3/strsep.3:63 build/C/man3/strsignal.3:75 build/C/man3/strspn.3:53 build/C/man3/strstr.3:60 build/C/man3/strtok.3:106 build/C/man3/strverscmp.3:81 build/C/man3/strxfrm.3:56
88 #, no-wrap
89 msgid "RETURN VALUE"
90 msgstr ""
91
92 #. type: Plain text
93 #: build/C/man3/bcmp.3:61
94 msgid ""
95 "The B<bcmp>()  function returns 0 if the byte sequences are equal, otherwise "
96 "a nonzero result is returned."
97 msgstr ""
98
99 #. type: SH
100 #: build/C/man3/bcmp.3:61 build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50 build/C/man3/ffs.3:91 build/C/man3/index.3:62 build/C/man3/memccpy.3:53 build/C/man3/memchr.3:124 build/C/man3/memcmp.3:60 build/C/man3/memcpy.3:52 build/C/man3/memfrob.3:58 build/C/man3/memmem.3:52 build/C/man3/memmove.3:57 build/C/man3/mempcpy.3:58 build/C/man3/memset.3:49 build/C/man3/stpcpy.3:66 build/C/man3/stpncpy.3:66 build/C/man3/strcasecmp.3:63 build/C/man3/strcat.3:103 build/C/man3/strchr.3:104 build/C/man3/strcmp.3:65 build/C/man3/strcoll.3:58 build/C/man3/strcpy.3:104 build/C/man3/strdup.3:113 build/C/man3/strerror.3:175 build/C/man3/strfry.3:54 build/C/man3/strlen.3:48 build/C/man3/strnlen.3:58 build/C/man3/strpbrk.3:50 build/C/man3/strsep.3:68 build/C/man3/strsignal.3:82 build/C/man3/strspn.3:65 build/C/man3/strstr.3:63 build/C/man3/strtok.3:113 build/C/man3/strverscmp.3:88 build/C/man3/strxfrm.3:64
101 #, no-wrap
102 msgid "CONFORMING TO"
103 msgstr ""
104
105 #. type: Plain text
106 #: build/C/man3/bcmp.3:68
107 msgid ""
108 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
109 "B<memcmp>(3)  in new programs.  POSIX.1-2008 removes the specification of "
110 "B<bcmp>()."
111 msgstr ""
112
113 #. type: SH
114 #: build/C/man3/bcmp.3:68 build/C/man3/bcopy.3:68 build/C/man3/bstring.3:82 build/C/man3/bzero.3:57 build/C/man3/ffs.3:103 build/C/man3/index.3:73 build/C/man3/memccpy.3:55 build/C/man3/memchr.3:136 build/C/man3/memcmp.3:62 build/C/man3/memcpy.3:54 build/C/man3/memfrob.3:63 build/C/man3/memmem.3:65 build/C/man3/memmove.3:59 build/C/man3/mempcpy.3:71 build/C/man3/memset.3:51 build/C/man3/stpcpy.3:99 build/C/man3/stpncpy.3:68 build/C/man3/strcasecmp.3:65 build/C/man3/strcat.3:142 build/C/man3/strchr.3:111 build/C/man3/strcmp.3:67 build/C/man3/strcoll.3:65 build/C/man3/strcpy.3:194 build/C/man3/strdup.3:123 build/C/man3/strerror.3:204 build/C/man3/strfry.3:59 build/C/man3/string.3:94 build/C/man3/strlen.3:50 build/C/man3/strnlen.3:60 build/C/man3/strpbrk.3:52 build/C/man3/strsep.3:88 build/C/man3/strsignal.3:85 build/C/man3/strspn.3:67 build/C/man3/strstr.3:76 build/C/man3/strtok.3:203 build/C/man3/strverscmp.3:90 build/C/man3/strxfrm.3:72
115 #, no-wrap
116 msgid "SEE ALSO"
117 msgstr ""
118
119 #. type: Plain text
120 #: build/C/man3/bcmp.3:75
121 msgid ""
122 "B<memcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
123 "B<strncasecmp>(3), B<strncmp>(3)"
124 msgstr ""
125
126 #. type: SH
127 #: build/C/man3/bcmp.3:75 build/C/man3/bcopy.3:74 build/C/man3/bstring.3:94 build/C/man3/bzero.3:60 build/C/man3/ffs.3:105 build/C/man3/index.3:83 build/C/man3/memccpy.3:61 build/C/man3/memchr.3:147 build/C/man3/memcmp.3:70 build/C/man3/memcpy.3:62 build/C/man3/memfrob.3:65 build/C/man3/memmem.3:67 build/C/man3/memmove.3:66 build/C/man3/mempcpy.3:76 build/C/man3/memset.3:55 build/C/man3/stpcpy.3:108 build/C/man3/stpncpy.3:71 build/C/man3/strcasecmp.3:74 build/C/man3/strcat.3:151 build/C/man3/strchr.3:124 build/C/man3/strcmp.3:77 build/C/man3/strcoll.3:73 build/C/man3/strcpy.3:205 build/C/man3/strdup.3:131 build/C/man3/strerror.3:210 build/C/man3/strfry.3:62 build/C/man3/string.3:119 build/C/man3/strlen.3:55 build/C/man3/strnlen.3:62 build/C/man3/strpbrk.3:63 build/C/man3/strsep.3:98 build/C/man3/strsignal.3:88 build/C/man3/strspn.3:79 build/C/man3/strstr.3:88 build/C/man3/strtok.3:214 build/C/man3/strverscmp.3:95 build/C/man3/strxfrm.3:80
128 #, no-wrap
129 msgid "COLOPHON"
130 msgstr ""
131
132 #. type: Plain text
133 #: build/C/man3/bcmp.3:82 build/C/man3/bcopy.3:81 build/C/man3/bstring.3:101 build/C/man3/bzero.3:67 build/C/man3/ffs.3:112 build/C/man3/index.3:90 build/C/man3/memccpy.3:68 build/C/man3/memchr.3:154 build/C/man3/memcmp.3:77 build/C/man3/memcpy.3:69 build/C/man3/memfrob.3:72 build/C/man3/memmem.3:74 build/C/man3/memmove.3:73 build/C/man3/mempcpy.3:83 build/C/man3/memset.3:62 build/C/man3/stpcpy.3:115 build/C/man3/stpncpy.3:78 build/C/man3/strcasecmp.3:81 build/C/man3/strcat.3:158 build/C/man3/strchr.3:131 build/C/man3/strcmp.3:84 build/C/man3/strcoll.3:80 build/C/man3/strcpy.3:212 build/C/man3/strdup.3:138 build/C/man3/strerror.3:217 build/C/man3/strfry.3:69 build/C/man3/string.3:126 build/C/man3/strlen.3:62 build/C/man3/strnlen.3:69 build/C/man3/strpbrk.3:70 build/C/man3/strsep.3:105 build/C/man3/strsignal.3:95 build/C/man3/strspn.3:86 build/C/man3/strstr.3:95 build/C/man3/strtok.3:221 build/C/man3/strverscmp.3:102 build/C/man3/strxfrm.3:87
134 msgid ""
135 "This page is part of release 3.50 of the Linux I<man-pages> project.  A "
136 "description of the project, and information about reporting bugs, can be "
137 "found at http://www.kernel.org/doc/man-pages/."
138 msgstr ""
139
140 #. type: TH
141 #: build/C/man3/bcopy.3:33
142 #, no-wrap
143 msgid "BCOPY"
144 msgstr ""
145
146 #. type: TH
147 #: build/C/man3/bcopy.3:33
148 #, no-wrap
149 msgid "2009-03-15"
150 msgstr ""
151
152 #. type: Plain text
153 #: build/C/man3/bcopy.3:36
154 msgid "bcopy - copy byte sequence"
155 msgstr ""
156
157 #. type: Plain text
158 #: build/C/man3/bcopy.3:41
159 #, no-wrap
160 msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, size_t >I<n>B<);>\n"
161 msgstr ""
162
163 #. type: Plain text
164 #: build/C/man3/bcopy.3:52
165 msgid ""
166 "The B<bcopy>()  function copies I<n> bytes from I<src> to I<dest>.  The "
167 "result is correct, even when both areas overlap."
168 msgstr ""
169
170 #. type: Plain text
171 #: build/C/man3/bcopy.3:54 build/C/man3/bzero.3:50
172 msgid "None."
173 msgstr ""
174
175 #. type: Plain text
176 #: build/C/man3/bcopy.3:68
177 msgid ""
178 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
179 "B<memcpy>(3)  or B<memmove>(3)  in new programs.  Note that the first two "
180 "arguments are interchanged for B<memcpy>(3)  and B<memmove>(3).  "
181 "POSIX.1-2008 removes the specification of B<bcopy>()."
182 msgstr ""
183
184 #. type: Plain text
185 #: build/C/man3/bcopy.3:74
186 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
187 msgstr ""
188
189 #. type: TH
190 #: build/C/man3/bstring.3:32
191 #, no-wrap
192 msgid "BSTRING"
193 msgstr ""
194
195 #. type: TH
196 #: build/C/man3/bstring.3:32
197 #, no-wrap
198 msgid "2002-01-20"
199 msgstr ""
200
201 #. type: Plain text
202 #: build/C/man3/bstring.3:36
203 msgid ""
204 "bcmp, bcopy, bzero, memccpy, memchr, memcmp, memcpy, memfrob, memmem, "
205 "memmove, memset - byte string operations"
206 msgstr ""
207
208 #. type: Plain text
209 #: build/C/man3/bstring.3:39 build/C/man3/ffs.3:43 build/C/man3/memccpy.3:36 build/C/man3/memchr.3:38 build/C/man3/memcmp.3:36 build/C/man3/memcpy.3:36 build/C/man3/memmove.3:36 build/C/man3/mempcpy.3:18 build/C/man3/memset.3:36 build/C/man3/stpcpy.3:31 build/C/man3/stpncpy.3:20 build/C/man3/strcat.3:38 build/C/man3/strchr.3:39 build/C/man3/strcmp.3:38 build/C/man3/strcoll.3:36 build/C/man3/strcpy.3:41 build/C/man3/strdup.3:37 build/C/man3/strerror.3:45 build/C/man3/strfry.3:38 build/C/man3/string.3:49 build/C/man3/strlen.3:36 build/C/man3/strnlen.3:19 build/C/man3/strpbrk.3:36 build/C/man3/strsep.3:39 build/C/man3/strsignal.3:36 build/C/man3/strspn.3:36 build/C/man3/strstr.3:39 build/C/man3/strstr.3:45 build/C/man3/strtok.3:36 build/C/man3/strverscmp.3:33 build/C/man3/strxfrm.3:36
210 #, no-wrap
211 msgid "B<#include E<lt>string.hE<gt>>\n"
212 msgstr ""
213
214 #. type: Plain text
215 #: build/C/man3/bstring.3:41
216 #, no-wrap
217 msgid "B<int bcmp(const void *>I<s1>B<, const void *>I<s2>B<, int >I<n>B<);>\n"
218 msgstr ""
219
220 #. type: Plain text
221 #: build/C/man3/bstring.3:43
222 #, no-wrap
223 msgid "B<void bcopy(const void *>I<src>B<, void *>I<dest>B<, int >I<n>B<);>\n"
224 msgstr ""
225
226 #. type: Plain text
227 #: build/C/man3/bstring.3:45
228 #, no-wrap
229 msgid "B<void bzero(void *>I<s>B<, int >I<n>B<);>\n"
230 msgstr ""
231
232 #. type: Plain text
233 #: build/C/man3/bstring.3:47 build/C/man3/memccpy.3:38
234 #, no-wrap
235 msgid ""
236 "B<void *memccpy(void *>I<dest>B<, const void *>I<src>B<, int >I<c>B<, size_t "
237 ">I<n>B<);>\n"
238 msgstr ""
239
240 #. type: Plain text
241 #: build/C/man3/bstring.3:49 build/C/man3/memchr.3:40
242 #, no-wrap
243 msgid "B<void *memchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
244 msgstr ""
245
246 #. type: Plain text
247 #: build/C/man3/bstring.3:51 build/C/man3/memcmp.3:38
248 #, no-wrap
249 msgid "B<int memcmp(const void *>I<s1>B<, const void *>I<s2>B<, size_t >I<n>B<);>\n"
250 msgstr ""
251
252 #. type: Plain text
253 #: build/C/man3/bstring.3:53 build/C/man3/memcpy.3:38
254 #, no-wrap
255 msgid "B<void *memcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
256 msgstr ""
257
258 #. type: Plain text
259 #: build/C/man3/bstring.3:55 build/C/man3/memfrob.3:39
260 #, no-wrap
261 msgid "B<void *memfrob(void *>I<s>B<, size_t >I<n>B<);>\n"
262 msgstr ""
263
264 #. type: Plain text
265 #: build/C/man3/bstring.3:58
266 #, no-wrap
267 msgid ""
268 "B<void *memmem(const void *>I<needle>B<, size_t >I<needlelen>B<,>\n"
269 "B<             const void *>I<haystack>B<, size_t >I<haystacklen>B<);>\n"
270 msgstr ""
271
272 #. type: Plain text
273 #: build/C/man3/bstring.3:60 build/C/man3/memmove.3:38
274 #, no-wrap
275 msgid "B<void *memmove(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
276 msgstr ""
277
278 #. type: Plain text
279 #: build/C/man3/bstring.3:62 build/C/man3/memset.3:38
280 #, no-wrap
281 msgid "B<void *memset(void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
282 msgstr ""
283
284 #. type: Plain text
285 #: build/C/man3/bstring.3:68
286 msgid ""
287 "The byte string functions perform operations on strings (byte arrays)  that "
288 "are not necessarily null-terminated.  See the individual man pages for "
289 "descriptions of each function."
290 msgstr ""
291
292 #. type: SH
293 #: build/C/man3/bstring.3:68 build/C/man3/ffs.3:100 build/C/man3/strcat.3:105 build/C/man3/strcoll.3:60 build/C/man3/strcpy.3:106 build/C/man3/strsep.3:70 build/C/man3/strxfrm.3:66
294 #, no-wrap
295 msgid "NOTES"
296 msgstr ""
297
298 #.  The old functions are not even available on some non-GNU/Linux systems.
299 #. type: Plain text
300 #: build/C/man3/bstring.3:82
301 msgid ""
302 "The functions B<bcmp>(), B<bcopy>()  and B<bzero>()  are obsolete.  Use "
303 "B<memcmp>(), B<memcpy>()  and B<memset>()  instead."
304 msgstr ""
305
306 #. type: Plain text
307 #: build/C/man3/bstring.3:94
308 msgid ""
309 "B<bcmp>(3), B<bcopy>(3), B<bzero>(3), B<memccpy>(3), B<memchr>(3), "
310 "B<memcmp>(3), B<memcpy>(3), B<memfrob>(3), B<memmem>(3), B<memmove>(3), "
311 "B<memset>(3)"
312 msgstr ""
313
314 #. type: TH
315 #: build/C/man3/bzero.3:31
316 #, no-wrap
317 msgid "BZERO"
318 msgstr ""
319
320 #. type: Plain text
321 #: build/C/man3/bzero.3:34
322 msgid "bzero - write zero-valued bytes"
323 msgstr ""
324
325 #. type: Plain text
326 #: build/C/man3/bzero.3:39
327 #, no-wrap
328 msgid "B<void bzero(void *>I<s>B<, size_t >I<n>B<);>\n"
329 msgstr ""
330
331 #. type: Plain text
332 #: build/C/man3/bzero.3:48
333 msgid ""
334 "The B<bzero>()  function sets the first I<n> bytes of the area starting at "
335 "I<s> to zero (bytes containing \\(aq\\e0\\(aq)."
336 msgstr ""
337
338 #. type: Plain text
339 #: build/C/man3/bzero.3:57
340 msgid ""
341 "4.3BSD.  This function is deprecated (marked as LEGACY in POSIX.1-2001): use "
342 "B<memset>(3)  in new programs.  POSIX.1-2008 removes the specification of "
343 "B<bzero>()."
344 msgstr ""
345
346 #. type: Plain text
347 #: build/C/man3/bzero.3:60
348 msgid "B<memset>(3), B<swab>(3)"
349 msgstr ""
350
351 #. type: TH
352 #: build/C/man3/ffs.3:33
353 #, no-wrap
354 msgid "FFS"
355 msgstr ""
356
357 #. type: TH
358 #: build/C/man3/ffs.3:33 build/C/man3/strcoll.3:30 build/C/man3/strfry.3:30
359 #, no-wrap
360 msgid "2010-09-20"
361 msgstr ""
362
363 #. type: TH
364 #: build/C/man3/ffs.3:33 build/C/man3/index.3:31 build/C/man3/memccpy.3:30 build/C/man3/memfrob.3:30 build/C/man3/memmem.3:30 build/C/man3/memmove.3:30 build/C/man3/mempcpy.3:10 build/C/man3/memset.3:30 build/C/man3/stpcpy.3:25 build/C/man3/stpncpy.3:14 build/C/man3/strcat.3:32 build/C/man3/strchr.3:33 build/C/man3/strcoll.3:30 build/C/man3/strcpy.3:35 build/C/man3/strdup.3:31 build/C/man3/strfry.3:30 build/C/man3/strlen.3:30 build/C/man3/strnlen.3:13 build/C/man3/strsep.3:33 build/C/man3/strsignal.3:30 build/C/man3/strstr.3:33 build/C/man3/strtok.3:30 build/C/man3/strverscmp.3:25 build/C/man3/strxfrm.3:30
365 #, no-wrap
366 msgid "GNU"
367 msgstr ""
368
369 #. type: Plain text
370 #: build/C/man3/ffs.3:36
371 msgid "ffs, ffsl, ffsll - find first bit set in a word"
372 msgstr ""
373
374 #. type: Plain text
375 #: build/C/man3/ffs.3:41
376 #, no-wrap
377 msgid "B<int ffs(int >I<i>B<);>\n"
378 msgstr ""
379
380 #. type: Plain text
381 #: build/C/man3/ffs.3:45
382 #, no-wrap
383 msgid "B<int ffsl(long int >I<i>B<);>\n"
384 msgstr ""
385
386 #. type: Plain text
387 #: build/C/man3/ffs.3:47
388 #, no-wrap
389 msgid "B<int ffsll(long long int >I<i>B<);>\n"
390 msgstr ""
391
392 #. type: Plain text
393 #: build/C/man3/ffs.3:52 build/C/man3/memchr.3:49 build/C/man3/stpcpy.3:38 build/C/man3/stpncpy.3:27 build/C/man3/strdup.3:50 build/C/man3/strerror.3:58 build/C/man3/strnlen.3:26 build/C/man3/strsep.3:46 build/C/man3/strsignal.3:45 build/C/man3/strtok.3:45
394 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
395 msgstr ""
396
397 #. type: Plain text
398 #: build/C/man3/ffs.3:57
399 msgid "B<ffs>():"
400 msgstr ""
401
402 #. type: TP
403 #: build/C/man3/ffs.3:58
404 #, no-wrap
405 msgid "Since glibc 2.12:"
406 msgstr ""
407
408 #. type: Plain text
409 #: build/C/man3/ffs.3:62
410 msgid ""
411 "_SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L || "
412 "_XOPEN_SOURCE\\ E<gt>=\\ 700 ||"
413 msgstr ""
414
415 #. type: TP
416 #: build/C/man3/ffs.3:62
417 #, no-wrap
418 msgid "Before glibc 2.12:"
419 msgstr ""
420
421 #. type: Plain text
422 #: build/C/man3/ffs.3:65
423 msgid "none"
424 msgstr ""
425
426 #. type: Plain text
427 #: build/C/man3/ffs.3:69
428 msgid "B<ffsl>(), B<ffsll>():"
429 msgstr ""
430
431 #. type: Plain text
432 #: build/C/man3/ffs.3:71 build/C/man3/stpcpy.3:50 build/C/man3/stpncpy.3:39 build/C/man3/strdup.3:70 build/C/man3/strnlen.3:38 build/C/man3/strsignal.3:57
433 msgid "_GNU_SOURCE"
434 msgstr ""
435
436 #. type: Plain text
437 #: build/C/man3/ffs.3:87
438 msgid ""
439 "The B<ffs>()  function returns the position of the first (least significant) "
440 "bit set in the word I<i>.  The least significant bit is position 1 and the "
441 "most significant position is, for example, 32 or 64.  The functions "
442 "B<ffsll>()  and B<ffsl>()  do the same but take arguments of possibly "
443 "different size."
444 msgstr ""
445
446 #. type: Plain text
447 #: build/C/man3/ffs.3:91
448 msgid ""
449 "These functions return the position of the first bit set, or 0 if no bits "
450 "are set in I<i>."
451 msgstr ""
452
453 #. type: Plain text
454 #: build/C/man3/ffs.3:94
455 msgid "B<ffs>(): 4.3BSD, POSIX.1-2001."
456 msgstr ""
457
458 #. type: Plain text
459 #: build/C/man3/ffs.3:100
460 msgid "The B<ffsl>()  and B<ffsll>()  functions are glibc extensions."
461 msgstr ""
462
463 #. type: Plain text
464 #: build/C/man3/ffs.3:103
465 msgid "BSD systems have a prototype in I<E<lt>string.hE<gt>>."
466 msgstr ""
467
468 #. type: Plain text
469 #: build/C/man3/ffs.3:105
470 msgid "B<memchr>(3)"
471 msgstr ""
472
473 #. type: TH
474 #: build/C/man3/index.3:31
475 #, no-wrap
476 msgid "INDEX"
477 msgstr ""
478
479 #. type: TH
480 #: build/C/man3/index.3:31
481 #, no-wrap
482 msgid "2011-09-21"
483 msgstr ""
484
485 #. type: Plain text
486 #: build/C/man3/index.3:34
487 msgid "index, rindex - locate character in string"
488 msgstr ""
489
490 #. type: Plain text
491 #: build/C/man3/index.3:39 build/C/man3/string.3:45
492 #, no-wrap
493 msgid "B<char *index(const char *>I<s>B<, int >I<c>B<);>\n"
494 msgstr ""
495
496 #. type: Plain text
497 #: build/C/man3/index.3:41 build/C/man3/string.3:47
498 #, no-wrap
499 msgid "B<char *rindex(const char *>I<s>B<, int >I<c>B<);>\n"
500 msgstr ""
501
502 #. type: Plain text
503 #: build/C/man3/index.3:47
504 msgid ""
505 "The B<index>()  function returns a pointer to the first occurrence of the "
506 "character I<c> in the string I<s>."
507 msgstr ""
508
509 #. type: Plain text
510 #: build/C/man3/index.3:52
511 msgid ""
512 "The B<rindex>()  function returns a pointer to the last occurrence of the "
513 "character I<c> in the string I<s>."
514 msgstr ""
515
516 #. type: Plain text
517 #: build/C/man3/index.3:55
518 msgid ""
519 "The terminating null byte (\\(aq\\e0\\(aq) is considered to be a part of the "
520 "strings."
521 msgstr ""
522
523 #. type: Plain text
524 #: build/C/man3/index.3:62
525 msgid ""
526 "The B<index>()  and B<rindex>()  functions return a pointer to the matched "
527 "character or NULL if the character is not found."
528 msgstr ""
529
530 #. type: Plain text
531 #: build/C/man3/index.3:73
532 msgid ""
533 "4.3BSD; marked as LEGACY in POSIX.1-2001.  POSIX.1-2008 removes the "
534 "specifications of B<index>()  and B<rindex>(), recommending B<strchr>(3)  "
535 "and B<strrchr>(3)  instead."
536 msgstr ""
537
538 #. type: Plain text
539 #: build/C/man3/index.3:83
540 msgid ""
541 "B<memchr>(3), B<strchr>(3), B<string>(3), B<strpbrk>(3), B<strrchr>(3), "
542 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
543 msgstr ""
544
545 #. type: TH
546 #: build/C/man3/memccpy.3:30
547 #, no-wrap
548 msgid "MEMCCPY"
549 msgstr ""
550
551 #. type: TH
552 #: build/C/man3/memccpy.3:30
553 #, no-wrap
554 msgid "2009-01-13"
555 msgstr ""
556
557 #. type: Plain text
558 #: build/C/man3/memccpy.3:33
559 msgid "memccpy - copy memory area"
560 msgstr ""
561
562 #. type: Plain text
563 #: build/C/man3/memccpy.3:45
564 msgid ""
565 "The B<memccpy>()  function copies no more than I<n> bytes from memory area "
566 "I<src> to memory area I<dest>, stopping when the character I<c> is found."
567 msgstr ""
568
569 #. type: Plain text
570 #: build/C/man3/memccpy.3:47
571 msgid "If the memory areas overlap, the results are undefined."
572 msgstr ""
573
574 #. type: Plain text
575 #: build/C/man3/memccpy.3:53
576 msgid ""
577 "The B<memccpy>()  function returns a pointer to the next character in "
578 "I<dest> after I<c>, or NULL if I<c> was not found in the first I<n> "
579 "characters of I<src>."
580 msgstr ""
581
582 #. type: Plain text
583 #: build/C/man3/memccpy.3:55
584 msgid "SVr4, 4.3BSD, POSIX.1-2001."
585 msgstr ""
586
587 #. type: Plain text
588 #: build/C/man3/memccpy.3:61
589 msgid "B<bcopy>(3), B<memcpy>(3), B<memmove>(3), B<strcpy>(3), B<strncpy>(3)"
590 msgstr ""
591
592 #. type: TH
593 #: build/C/man3/memchr.3:32
594 #, no-wrap
595 msgid "MEMCHR"
596 msgstr ""
597
598 #. type: TH
599 #: build/C/man3/memchr.3:32
600 #, no-wrap
601 msgid "2012-04-23"
602 msgstr ""
603
604 #. type: Plain text
605 #: build/C/man3/memchr.3:35
606 msgid "memchr, memrchr, rawmemchr - scan memory for a character"
607 msgstr ""
608
609 #. type: Plain text
610 #: build/C/man3/memchr.3:42
611 #, no-wrap
612 msgid "B<void *memrchr(const void *>I<s>B<, int >I<c>B<, size_t >I<n>B<);>\n"
613 msgstr ""
614
615 #. type: Plain text
616 #: build/C/man3/memchr.3:44
617 #, no-wrap
618 msgid "B<void *rawmemchr(const void *>I<s>B<, int >I<c>B<);>\n"
619 msgstr ""
620
621 #. type: Plain text
622 #: build/C/man3/memchr.3:54
623 msgid "B<memrchr>(), B<rawmemchr>(): _GNU_SOURCE"
624 msgstr ""
625
626 #. type: Plain text
627 #: build/C/man3/memchr.3:70
628 msgid ""
629 "The B<memchr>()  function scans the initial I<n> bytes of the memory area "
630 "pointed to by I<s> for the first instance of I<c>.  Both I<c> and the bytes "
631 "of the memory area pointed to by I<s> are interpreted as I<unsigned char>."
632 msgstr ""
633
634 #. type: Plain text
635 #: build/C/man3/memchr.3:81
636 msgid ""
637 "The B<memrchr>()  function is like the B<memchr>()  function, except that it "
638 "searches backward from the end of the I<n> bytes pointed to by I<s> instead "
639 "of forward from the beginning."
640 msgstr ""
641
642 #. type: Plain text
643 #: build/C/man3/memchr.3:99
644 msgid ""
645 "The B<rawmemchr>()  function is similar to B<memchr>(): it assumes (i.e., "
646 "the programmer knows for certain)  that an instance of I<c> lies somewhere "
647 "in the memory area starting at the location pointed to by I<s>, and so "
648 "performs an optimized search for I<c> (i.e., no use of a count argument to "
649 "limit the range of the search).  If an instance of I<c> is not found, the "
650 "results are unpredictable.  The following call is a fast means of locating a "
651 "string's terminating null byte:"
652 msgstr ""
653
654 #. type: Plain text
655 #: build/C/man3/memchr.3:103
656 #, no-wrap
657 msgid "char *p = rawmemchr(s,\\ \\(aq\\e0\\(aq);\n"
658 msgstr ""
659
660 #. type: Plain text
661 #: build/C/man3/memchr.3:113
662 msgid ""
663 "The B<memchr>()  and B<memrchr>()  functions return a pointer to the "
664 "matching byte or NULL if the character does not occur in the given memory "
665 "area."
666 msgstr ""
667
668 #. type: Plain text
669 #: build/C/man3/memchr.3:118
670 msgid ""
671 "The B<rawmemchr>()  function returns a pointer to the matching byte, if one "
672 "is found.  If no matching byte is found, the result is unspecified."
673 msgstr ""
674
675 #. type: SH
676 #: build/C/man3/memchr.3:118 build/C/man3/mempcpy.3:55 build/C/man3/strchr.3:101
677 #, no-wrap
678 msgid "VERSIONS"
679 msgstr ""
680
681 #. type: Plain text
682 #: build/C/man3/memchr.3:121
683 msgid "B<rawmemchr>()  first appeared in glibc in version 2.1."
684 msgstr ""
685
686 #. type: Plain text
687 #: build/C/man3/memchr.3:124
688 msgid "B<memrchr>()  first appeared in glibc in version 2.2."
689 msgstr ""
690
691 #. type: Plain text
692 #: build/C/man3/memchr.3:128
693 msgid "The B<memchr>()  function conforms to SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
694 msgstr ""
695
696 #. type: Plain text
697 #: build/C/man3/memchr.3:132
698 msgid "The B<memrchr>()  function is a GNU extension, available since glibc 2.1.91."
699 msgstr ""
700
701 #. type: Plain text
702 #: build/C/man3/memchr.3:136
703 msgid "The B<rawmemchr>()  function is a GNU extension, available since glibc 2.1."
704 msgstr ""
705
706 #. type: Plain text
707 #: build/C/man3/memchr.3:147
708 msgid ""
709 "B<ffs>(3), B<index>(3), B<rindex>(3), B<strchr>(3), B<strpbrk>(3), "
710 "B<strrchr>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wmemchr>(3)"
711 msgstr ""
712
713 #. type: TH
714 #: build/C/man3/memcmp.3:30
715 #, no-wrap
716 msgid "MEMCMP"
717 msgstr ""
718
719 #. type: TH
720 #: build/C/man3/memcmp.3:30 build/C/man3/strcmp.3:32
721 #, no-wrap
722 msgid "2012-11-25"
723 msgstr ""
724
725 #. type: Plain text
726 #: build/C/man3/memcmp.3:33
727 msgid "memcmp - compare memory areas"
728 msgstr ""
729
730 #. type: Plain text
731 #: build/C/man3/memcmp.3:45
732 msgid ""
733 "The B<memcmp>()  function compares the first I<n> bytes (each interpreted as "
734 "I<unsigned char>)  of the memory areas I<s1> and I<s2>."
735 msgstr ""
736
737 #. type: Plain text
738 #: build/C/man3/memcmp.3:52
739 msgid ""
740 "The B<memcmp>()  function returns an integer less than, equal to, or greater "
741 "than zero if the first I<n> bytes of I<s1> is found, respectively, to be "
742 "less than, to match, or be greater than the first I<n> bytes of I<s2>."
743 msgstr ""
744
745 #. type: Plain text
746 #: build/C/man3/memcmp.3:60
747 msgid ""
748 "For a nonzero return value, the sign is determined by the sign of the "
749 "difference between the first pair of bytes (interpreted as I<unsigned char>)  "
750 "that differ in I<s1> and I<s2>."
751 msgstr ""
752
753 #. type: Plain text
754 #: build/C/man3/memcmp.3:62 build/C/man3/memcpy.3:54 build/C/man3/memmove.3:59 build/C/man3/memset.3:51
755 msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
756 msgstr ""
757
758 #. type: Plain text
759 #: build/C/man3/memcmp.3:70
760 msgid ""
761 "B<bcmp>(3), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3), "
762 "B<strncasecmp>(3), B<strncmp>(3), B<wmemcmp>(3)"
763 msgstr ""
764
765 #. type: TH
766 #: build/C/man3/memcpy.3:30
767 #, no-wrap
768 msgid "MEMCPY"
769 msgstr ""
770
771 #. type: TH
772 #: build/C/man3/memcpy.3:30
773 #, no-wrap
774 msgid "2010-11-15"
775 msgstr ""
776
777 #. type: Plain text
778 #: build/C/man3/memcpy.3:33
779 msgid "memcpy - copy memory area"
780 msgstr ""
781
782 #. type: Plain text
783 #: build/C/man3/memcpy.3:48
784 msgid ""
785 "The B<memcpy>()  function copies I<n> bytes from memory area I<src> to "
786 "memory area I<dest>.  The memory areas must not overlap.  Use B<memmove>(3)  "
787 "if the memory areas do overlap."
788 msgstr ""
789
790 #. type: Plain text
791 #: build/C/man3/memcpy.3:52
792 msgid "The B<memcpy>()  function returns a pointer to I<dest>."
793 msgstr ""
794
795 #. type: Plain text
796 #: build/C/man3/memcpy.3:62
797 msgid ""
798 "B<bcopy>(3), B<memccpy>(3), B<memmove>(3), B<mempcpy>(3), B<strcpy>(3), "
799 "B<strncpy>(3), B<wmemcpy>(3)"
800 msgstr ""
801
802 #. type: TH
803 #: build/C/man3/memfrob.3:30
804 #, no-wrap
805 msgid "MEMFROB"
806 msgstr ""
807
808 #. type: TH
809 #: build/C/man3/memfrob.3:30
810 #, no-wrap
811 msgid "2010-09-10"
812 msgstr ""
813
814 #. type: Plain text
815 #: build/C/man3/memfrob.3:33
816 msgid "memfrob - frobnicate (encrypt) a memory area"
817 msgstr ""
818
819 #. type: Plain text
820 #: build/C/man3/memfrob.3:37
821 #, no-wrap
822 msgid ""
823 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
824 "B<#include E<lt>string.hE<gt>>\n"
825 msgstr ""
826
827 #. type: Plain text
828 #: build/C/man3/memfrob.3:50
829 msgid ""
830 "The B<memfrob>()  function encrypts the first I<n> bytes of the memory area "
831 "I<s> by exclusive-ORing each character with the number 42.  The effect can "
832 "be reversed by using B<memfrob>()  on the encrypted memory area."
833 msgstr ""
834
835 #. type: Plain text
836 #: build/C/man3/memfrob.3:53
837 msgid ""
838 "Note that this function is not a proper encryption routine as the XOR "
839 "constant is fixed, and is only suitable for hiding strings."
840 msgstr ""
841
842 #. type: Plain text
843 #: build/C/man3/memfrob.3:58
844 msgid "The B<memfrob>()  function returns a pointer to the encrypted memory area."
845 msgstr ""
846
847 #. type: Plain text
848 #: build/C/man3/memfrob.3:63
849 msgid "The B<memfrob>()  function is unique to the GNU C Library."
850 msgstr ""
851
852 #. type: Plain text
853 #: build/C/man3/memfrob.3:65
854 msgid "B<strfry>(3)"
855 msgstr ""
856
857 #. type: TH
858 #: build/C/man3/memmem.3:30
859 #, no-wrap
860 msgid "MEMMEM"
861 msgstr ""
862
863 #. type: TH
864 #: build/C/man3/memmem.3:30
865 #, no-wrap
866 msgid "2008-12-05"
867 msgstr ""
868
869 #. type: Plain text
870 #: build/C/man3/memmem.3:33
871 msgid "memmem - locate a substring"
872 msgstr ""
873
874 #. type: Plain text
875 #: build/C/man3/memmem.3:37 build/C/man3/strchr.3:46
876 #, no-wrap
877 msgid ""
878 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
879 "B<#include E<lt>string.hE<gt>>\n"
880 msgstr ""
881
882 #. type: Plain text
883 #: build/C/man3/memmem.3:40
884 #, no-wrap
885 msgid ""
886 "B<void *memmem(const void *>I<haystack>B<, size_t >I<haystacklen>B<,>\n"
887 "B<             const void *>I<needle>B<, size_t >I<needlelen>B<);>\n"
888 msgstr ""
889
890 #. type: Plain text
891 #: build/C/man3/memmem.3:47
892 msgid ""
893 "The B<memmem>()  function finds the start of the first occurrence of the "
894 "substring I<needle> of length I<needlelen> in the memory area I<haystack> of "
895 "length I<haystacklen>."
896 msgstr ""
897
898 #. type: Plain text
899 #: build/C/man3/memmem.3:52
900 msgid ""
901 "The B<memmem>()  function returns a pointer to the beginning of the "
902 "substring, or NULL if the substring is not found."
903 msgstr ""
904
905 #. type: Plain text
906 #: build/C/man3/memmem.3:54 build/C/man3/mempcpy.3:60 build/C/man3/strverscmp.3:90
907 msgid "This function is a GNU extension."
908 msgstr ""
909
910 #. type: SH
911 #: build/C/man3/memmem.3:54 build/C/man3/stpcpy.3:72 build/C/man3/strcpy.3:183 build/C/man3/strsep.3:79 build/C/man3/strstr.3:70 build/C/man3/strtok.3:120
912 #, no-wrap
913 msgid "BUGS"
914 msgstr ""
915
916 #. type: Plain text
917 #: build/C/man3/memmem.3:59
918 msgid ""
919 "This function was broken in Linux libraries up to and including libc 5.0.9; "
920 "there the I<needle> and I<haystack> arguments were interchanged, and a "
921 "pointer to the end of the first occurrence of I<needle> was returned."
922 msgstr ""
923
924 #. type: Plain text
925 #: build/C/man3/memmem.3:65
926 msgid ""
927 "Both old and new libc's have the bug that if I<needle> is empty, "
928 "I<haystack-1> (instead of I<haystack>) is returned.  And glibc 2.0 makes it "
929 "worse, returning a pointer to the last byte of I<haystack>.  This is fixed "
930 "in glibc 2.1."
931 msgstr ""
932
933 #. type: Plain text
934 #: build/C/man3/memmem.3:67
935 msgid "B<strstr>(3)"
936 msgstr ""
937
938 #. type: TH
939 #: build/C/man3/memmove.3:30
940 #, no-wrap
941 msgid "MEMMOVE"
942 msgstr ""
943
944 #. type: TH
945 #: build/C/man3/memmove.3:30
946 #, no-wrap
947 msgid "1993-04-10"
948 msgstr ""
949
950 #. type: Plain text
951 #: build/C/man3/memmove.3:33
952 msgid "memmove - copy memory area"
953 msgstr ""
954
955 #. type: Plain text
956 #: build/C/man3/memmove.3:53
957 msgid ""
958 "The B<memmove>()  function copies I<n> bytes from memory area I<src> to "
959 "memory area I<dest>.  The memory areas may overlap: copying takes place as "
960 "though the bytes in I<src> are first copied into a temporary array that does "
961 "not overlap I<src> or I<dest>, and the bytes are then copied from the "
962 "temporary array to I<dest>."
963 msgstr ""
964
965 #. type: Plain text
966 #: build/C/man3/memmove.3:57
967 msgid "The B<memmove>()  function returns a pointer to I<dest>."
968 msgstr ""
969
970 #. type: Plain text
971 #: build/C/man3/memmove.3:66
972 msgid ""
973 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<strncpy>(3), "
974 "B<wmemmove>(3)"
975 msgstr ""
976
977 #. type: TH
978 #: build/C/man3/mempcpy.3:10
979 #, no-wrap
980 msgid "MEMPCPY"
981 msgstr ""
982
983 #. type: TH
984 #: build/C/man3/mempcpy.3:10
985 #, no-wrap
986 msgid "2008-08-12"
987 msgstr ""
988
989 #. type: Plain text
990 #: build/C/man3/mempcpy.3:13
991 msgid "mempcpy, wmempcpy - copy memory area"
992 msgstr ""
993
994 #. type: Plain text
995 #: build/C/man3/mempcpy.3:16 build/C/man3/mempcpy.3:22 build/C/man3/strfry.3:36 build/C/man3/strstr.3:43 build/C/man3/strverscmp.3:31
996 #, no-wrap
997 msgid "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
998 msgstr ""
999
1000 #. type: Plain text
1001 #: build/C/man3/mempcpy.3:20
1002 #, no-wrap
1003 msgid "B<void *mempcpy(void *>I<dest>B<, const void *>I<src>B<, size_t >I<n>B<);>\n"
1004 msgstr ""
1005
1006 #. type: Plain text
1007 #: build/C/man3/mempcpy.3:24
1008 #, no-wrap
1009 msgid "B<#include E<lt>wchar.hE<gt>>\n"
1010 msgstr ""
1011
1012 #. type: Plain text
1013 #: build/C/man3/mempcpy.3:26
1014 #, no-wrap
1015 msgid ""
1016 "B<wchar_t *wmempcpy(wchar_t *>I<dest>B<, const wchar_t *>I<src>B<, size_t "
1017 ">I<n>B<);>\n"
1018 msgstr ""
1019
1020 #. type: Plain text
1021 #: build/C/man3/mempcpy.3:42
1022 msgid ""
1023 "The B<mempcpy>()  function is nearly identical to the B<memcpy>(3)  "
1024 "function.  It copies I<n> bytes from the object beginning at I<src> into the "
1025 "object pointed to by I<dest>.  But instead of returning the value of I<dest> "
1026 "it returns a pointer to the byte following the last written byte."
1027 msgstr ""
1028
1029 #. type: Plain text
1030 #: build/C/man3/mempcpy.3:45
1031 msgid ""
1032 "This function is useful in situations where a number of objects shall be "
1033 "copied to consecutive memory positions."
1034 msgstr ""
1035
1036 #. type: Plain text
1037 #: build/C/man3/mempcpy.3:53
1038 msgid ""
1039 "The B<wmempcpy>()  function is identical but takes I<wchar_t> type arguments "
1040 "and copies I<n> wide characters."
1041 msgstr ""
1042
1043 #. type: Plain text
1044 #: build/C/man3/mempcpy.3:55
1045 msgid "I<dest> + I<n>."
1046 msgstr ""
1047
1048 #. type: Plain text
1049 #: build/C/man3/mempcpy.3:58
1050 msgid "B<mempcpy>()  first appeared in glibc in version 2.1."
1051 msgstr ""
1052
1053 #. type: SH
1054 #: build/C/man3/mempcpy.3:60 build/C/man3/stpcpy.3:75 build/C/man3/strtok.3:136
1055 #, no-wrap
1056 msgid "EXAMPLE"
1057 msgstr ""
1058
1059 #. type: Plain text
1060 #: build/C/man3/mempcpy.3:70
1061 #, no-wrap
1062 msgid ""
1063 "void *\n"
1064 "combine(void *o1, size_t s1, void *o2, size_t s2)\n"
1065 "{\n"
1066 "    void *result = malloc(s1 + s2);\n"
1067 "    if (result != NULL)\n"
1068 "        mempcpy(mempcpy(result, o1, s1), o2, s2);\n"
1069 "    return result;\n"
1070 "}\n"
1071 msgstr ""
1072
1073 #. type: Plain text
1074 #: build/C/man3/mempcpy.3:76
1075 msgid "B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<wmemcpy>(3)"
1076 msgstr ""
1077
1078 #. type: TH
1079 #: build/C/man3/memset.3:30
1080 #, no-wrap
1081 msgid "MEMSET"
1082 msgstr ""
1083
1084 #. type: TH
1085 #: build/C/man3/memset.3:30
1086 #, no-wrap
1087 msgid "1993-04-11"
1088 msgstr ""
1089
1090 #. type: Plain text
1091 #: build/C/man3/memset.3:33
1092 msgid "memset - fill memory with a constant byte"
1093 msgstr ""
1094
1095 #. type: Plain text
1096 #: build/C/man3/memset.3:44
1097 msgid ""
1098 "The B<memset>()  function fills the first I<n> bytes of the memory area "
1099 "pointed to by I<s> with the constant byte I<c>."
1100 msgstr ""
1101
1102 #. type: Plain text
1103 #: build/C/man3/memset.3:49
1104 msgid "The B<memset>()  function returns a pointer to the memory area I<s>."
1105 msgstr ""
1106
1107 #. type: Plain text
1108 #: build/C/man3/memset.3:55
1109 msgid "B<bzero>(3), B<swab>(3), B<wmemset>(3)"
1110 msgstr ""
1111
1112 #. type: TH
1113 #: build/C/man3/stpcpy.3:25
1114 #, no-wrap
1115 msgid "STPCPY"
1116 msgstr ""
1117
1118 #. type: TH
1119 #: build/C/man3/stpcpy.3:25
1120 #, no-wrap
1121 msgid "2012-03-15"
1122 msgstr ""
1123
1124 #. type: Plain text
1125 #: build/C/man3/stpcpy.3:28
1126 msgid "stpcpy - copy a string returning a pointer to its end"
1127 msgstr ""
1128
1129 #. type: Plain text
1130 #: build/C/man3/stpcpy.3:33 build/C/man3/string.3:51
1131 #, no-wrap
1132 msgid "B<char *stpcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1133 msgstr ""
1134
1135 #. type: Plain text
1136 #: build/C/man3/stpcpy.3:41
1137 msgid "B<stpcpy>():"
1138 msgstr ""
1139
1140 #. type: TP
1141 #: build/C/man3/stpcpy.3:44 build/C/man3/stpncpy.3:33 build/C/man3/strdup.3:64 build/C/man3/strnlen.3:32 build/C/man3/strsignal.3:51
1142 #, no-wrap
1143 msgid "Since glibc 2.10:"
1144 msgstr ""
1145
1146 #. type: Plain text
1147 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36 build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1148 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1149 msgstr ""
1150
1151 #. type: TP
1152 #: build/C/man3/stpcpy.3:47 build/C/man3/stpncpy.3:36 build/C/man3/strdup.3:67 build/C/man3/strnlen.3:35 build/C/man3/strsignal.3:54
1153 #, no-wrap
1154 msgid "Before glibc 2.10:"
1155 msgstr ""
1156
1157 #. type: Plain text
1158 #: build/C/man3/stpcpy.3:61
1159 msgid ""
1160 "The B<stpcpy>()  function copies the string pointed to by I<src> (including "
1161 "the terminating null byte (\\(aq\\e0\\(aq)) to the array pointed to by "
1162 "I<dest>.  The strings may not overlap, and the destination string I<dest> "
1163 "must be large enough to receive the copy."
1164 msgstr ""
1165
1166 #. type: Plain text
1167 #: build/C/man3/stpcpy.3:66
1168 msgid ""
1169 "B<stpcpy>()  returns a pointer to the B<end> of the string I<dest> (that is, "
1170 "the address of the terminating null byte)  rather than the beginning."
1171 msgstr ""
1172
1173 #. type: Plain text
1174 #: build/C/man3/stpcpy.3:72
1175 msgid ""
1176 "This function was added to POSIX.1-2008. Before that, it was not part of the "
1177 "C or POSIX.1 standards, nor customary on UNIX systems, but was not a GNU "
1178 "invention either.  Perhaps it came from MS-DOS.  It is also present on the "
1179 "BSDs."
1180 msgstr ""
1181
1182 #. type: Plain text
1183 #: build/C/man3/stpcpy.3:75
1184 msgid "This function may overrun the buffer I<dest>."
1185 msgstr ""
1186
1187 #. type: Plain text
1188 #: build/C/man3/stpcpy.3:80
1189 msgid ""
1190 "For example, this program uses B<stpcpy>()  to concatenate B<foo> and B<bar> "
1191 "to produce B<foobar>, which it then prints."
1192 msgstr ""
1193
1194 #. type: Plain text
1195 #: build/C/man3/stpcpy.3:86
1196 #, no-wrap
1197 msgid ""
1198 "#define _GNU_SOURCE\n"
1199 "#include E<lt>string.hE<gt>\n"
1200 "#include E<lt>stdio.hE<gt>\n"
1201 msgstr ""
1202
1203 #. type: Plain text
1204 #: build/C/man3/stpcpy.3:92
1205 #, no-wrap
1206 msgid ""
1207 "int\n"
1208 "main(void)\n"
1209 "{\n"
1210 "    char buffer[20];\n"
1211 "    char *to = buffer;\n"
1212 msgstr ""
1213
1214 #. type: Plain text
1215 #: build/C/man3/stpcpy.3:97
1216 #, no-wrap
1217 msgid ""
1218 "    to = stpcpy(to, \"foo\");\n"
1219 "    to = stpcpy(to, \"bar\");\n"
1220 "    printf(\"%s\\en\", buffer);\n"
1221 "}\n"
1222 msgstr ""
1223
1224 #. type: Plain text
1225 #: build/C/man3/stpcpy.3:108
1226 msgid ""
1227 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpncpy>(3), "
1228 "B<strcpy>(3), B<string>(3), B<wcpcpy>(3)"
1229 msgstr ""
1230
1231 #. type: TH
1232 #: build/C/man3/stpncpy.3:14
1233 #, no-wrap
1234 msgid "STPNCPY"
1235 msgstr ""
1236
1237 #. type: TH
1238 #: build/C/man3/stpncpy.3:14 build/C/man3/strsep.3:33 build/C/man3/strstr.3:33
1239 #, no-wrap
1240 msgid "2011-09-28"
1241 msgstr ""
1242
1243 #. type: Plain text
1244 #: build/C/man3/stpncpy.3:17
1245 msgid "stpncpy - copy a fixed-size string, returning a pointer to its end"
1246 msgstr ""
1247
1248 #. type: Plain text
1249 #: build/C/man3/stpncpy.3:22
1250 #, no-wrap
1251 msgid "B<char *stpncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1252 msgstr ""
1253
1254 #. type: Plain text
1255 #: build/C/man3/stpncpy.3:30
1256 msgid "B<stpncpy>():"
1257 msgstr ""
1258
1259 #. type: Plain text
1260 #: build/C/man3/stpncpy.3:56
1261 msgid ""
1262 "The B<stpncpy>()  function copies at most I<n> characters from the string "
1263 "pointed to by I<src>, including the terminating null byte (\\(aq\\e0\\(aq), "
1264 "to the array pointed to by I<dest>.  Exactly I<n> characters are written at "
1265 "I<dest>.  If the length I<strlen(src)> is smaller than I<n>, the remaining "
1266 "characters in the array pointed to by I<dest> are filled with null bytes "
1267 "(\\(aq\\e0\\(aq), If the length I<strlen(src)> is greater or equal to I<n>, "
1268 "the string pointed to by I<dest> will not be null-terminated."
1269 msgstr ""
1270
1271 #. type: Plain text
1272 #: build/C/man3/stpncpy.3:58
1273 msgid "The strings may not overlap."
1274 msgstr ""
1275
1276 #. type: Plain text
1277 #: build/C/man3/stpncpy.3:61
1278 msgid ""
1279 "The programmer must ensure that there is room for at least I<n> characters "
1280 "at I<dest>."
1281 msgstr ""
1282
1283 #. type: Plain text
1284 #: build/C/man3/stpncpy.3:66
1285 msgid ""
1286 "B<stpncpy>()  returns a pointer to the terminating null byte in I<dest>, or, "
1287 "if I<dest> is not null-terminated, I<dest + n>."
1288 msgstr ""
1289
1290 #. type: Plain text
1291 #: build/C/man3/stpncpy.3:68
1292 msgid ""
1293 "This function was added to POSIX.1-2008. Before that, it was a GNU "
1294 "extension."
1295 msgstr ""
1296
1297 #. type: Plain text
1298 #: build/C/man3/stpncpy.3:71
1299 msgid "B<strncpy>(3), B<wcpncpy>(3)"
1300 msgstr ""
1301
1302 #. type: TH
1303 #: build/C/man3/strcasecmp.3:30
1304 #, no-wrap
1305 msgid "STRCASECMP"
1306 msgstr ""
1307
1308 #. type: TH
1309 #: build/C/man3/strcasecmp.3:30 build/C/man3/strdup.3:31 build/C/man3/strnlen.3:13 build/C/man3/strpbrk.3:30 build/C/man3/strspn.3:30 build/C/man3/strtok.3:30 build/C/man3/strxfrm.3:30
1310 #, no-wrap
1311 msgid "2012-05-10"
1312 msgstr ""
1313
1314 #. type: Plain text
1315 #: build/C/man3/strcasecmp.3:33
1316 msgid "strcasecmp, strncasecmp - compare two strings ignoring case"
1317 msgstr ""
1318
1319 #. type: Plain text
1320 #: build/C/man3/strcasecmp.3:38 build/C/man3/string.3:41
1321 #, no-wrap
1322 msgid "B<int strcasecmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1323 msgstr ""
1324
1325 #. type: Plain text
1326 #: build/C/man3/strcasecmp.3:40 build/C/man3/string.3:43
1327 #, no-wrap
1328 msgid ""
1329 "B<int strncasecmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t "
1330 ">I<n>B<);>\n"
1331 msgstr ""
1332
1333 #. type: Plain text
1334 #: build/C/man3/strcasecmp.3:49
1335 msgid ""
1336 "The B<strcasecmp>()  function compares the two strings I<s1> and I<s2>, "
1337 "ignoring the case of the characters.  It returns an integer less than, equal "
1338 "to, or greater than zero if I<s1> is found, respectively, to be less than, "
1339 "to match, or be greater than I<s2>."
1340 msgstr ""
1341
1342 #. type: Plain text
1343 #: build/C/man3/strcasecmp.3:54
1344 msgid ""
1345 "The B<strncasecmp>()  function is similar, except it only compares the first "
1346 "I<n> bytes of I<s1>."
1347 msgstr ""
1348
1349 #. type: Plain text
1350 #: build/C/man3/strcasecmp.3:63
1351 msgid ""
1352 "The B<strcasecmp>()  and B<strncasecmp>()  functions return an integer less "
1353 "than, equal to, or greater than zero if I<s1> (or the first I<n> bytes "
1354 "thereof) is found, respectively, to be less than, to match, or be greater "
1355 "than I<s2>."
1356 msgstr ""
1357
1358 #. type: Plain text
1359 #: build/C/man3/strcasecmp.3:65
1360 msgid "4.4BSD, POSIX.1-2001."
1361 msgstr ""
1362
1363 #. type: Plain text
1364 #: build/C/man3/strcasecmp.3:74
1365 msgid ""
1366 "B<bcmp>(3), B<memcmp>(3), B<strcmp>(3), B<strcoll>(3), B<string>(3), "
1367 "B<strncmp>(3), B<wcscasecmp>(3), B<wcsncasecmp>(3)"
1368 msgstr ""
1369
1370 #. type: TH
1371 #: build/C/man3/strcat.3:32
1372 #, no-wrap
1373 msgid "STRCAT"
1374 msgstr ""
1375
1376 #. type: TH
1377 #: build/C/man3/strcat.3:32 build/C/man3/strcpy.3:35
1378 #, no-wrap
1379 msgid "2012-07-19"
1380 msgstr ""
1381
1382 #. type: Plain text
1383 #: build/C/man3/strcat.3:35
1384 msgid "strcat, strncat - concatenate two strings"
1385 msgstr ""
1386
1387 #. type: Plain text
1388 #: build/C/man3/strcat.3:40 build/C/man3/string.3:53
1389 #, no-wrap
1390 msgid "B<char *strcat(char *>I<dest>B<, const char *>I<src>B<);>\n"
1391 msgstr ""
1392
1393 #. type: Plain text
1394 #: build/C/man3/strcat.3:42 build/C/man3/string.3:71
1395 #, no-wrap
1396 msgid "B<char *strncat(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1397 msgstr ""
1398
1399 #. type: Plain text
1400 #: build/C/man3/strcat.3:56
1401 msgid ""
1402 "The B<strcat>()  function appends the I<src> string to the I<dest> string, "
1403 "overwriting the terminating null byte (\\(aq\\e0\\(aq) at the end of "
1404 "I<dest>, and then adds a terminating null byte.  The strings may not "
1405 "overlap, and the I<dest> string must have enough space for the result.  If "
1406 "I<dest> is not large enough, program behavior is unpredictable; I<buffer "
1407 "overruns are a favorite avenue for attacking secure programs>."
1408 msgstr ""
1409
1410 #. type: Plain text
1411 #: build/C/man3/strcat.3:60
1412 msgid "The B<strncat>()  function is similar, except that"
1413 msgstr ""
1414
1415 #. type: IP
1416 #: build/C/man3/strcat.3:60 build/C/man3/strcat.3:62 build/C/man3/strsep.3:82 build/C/man3/strsep.3:84 build/C/man3/strsep.3:86 build/C/man3/strtok.3:123 build/C/man3/strtok.3:125 build/C/man3/strtok.3:127 build/C/man3/strtok.3:129
1417 #, no-wrap
1418 msgid "*"
1419 msgstr ""
1420
1421 #. type: Plain text
1422 #: build/C/man3/strcat.3:62
1423 msgid "it will use at most I<n> bytes from I<src>; and"
1424 msgstr ""
1425
1426 #. type: Plain text
1427 #: build/C/man3/strcat.3:65
1428 msgid ""
1429 "I<src> does not need to be null-terminated if it contains I<n> or more "
1430 "bytes."
1431 msgstr ""
1432
1433 #. type: Plain text
1434 #: build/C/man3/strcat.3:69
1435 msgid ""
1436 "As with B<strcat>(), the resulting string in I<dest> is always "
1437 "null-terminated."
1438 msgstr ""
1439
1440 #. type: Plain text
1441 #: build/C/man3/strcat.3:76
1442 msgid ""
1443 "If I<src> contains I<n> or more bytes, B<strncat>()  writes I<n+1> bytes to "
1444 "I<dest> (I<n> from I<src> plus the terminating null byte).  Therefore, the "
1445 "size of I<dest> must be at least I<strlen(dest)+n+1>."
1446 msgstr ""
1447
1448 #. type: Plain text
1449 #: build/C/man3/strcat.3:80
1450 msgid "A simple implementation of B<strncat>()  might be:"
1451 msgstr ""
1452
1453 #. type: Plain text
1454 #: build/C/man3/strcat.3:88
1455 #, no-wrap
1456 msgid ""
1457 "char*\n"
1458 "strncat(char *dest, const char *src, size_t n)\n"
1459 "{\n"
1460 "    size_t dest_len = strlen(dest);\n"
1461 "    size_t i;\n"
1462 msgstr ""
1463
1464 #. type: Plain text
1465 #: build/C/man3/strcat.3:92
1466 #, no-wrap
1467 msgid ""
1468 "    for (i = 0 ; i E<lt> n && src[i] != \\(aq\\e0\\(aq ; i++)\n"
1469 "        dest[dest_len + i] = src[i];\n"
1470 "    dest[dest_len + i] = \\(aq\\e0\\(aq;\n"
1471 msgstr ""
1472
1473 #. type: Plain text
1474 #: build/C/man3/strcat.3:95 build/C/man3/strcpy.3:95
1475 #, no-wrap
1476 msgid ""
1477 "    return dest;\n"
1478 "}\n"
1479 msgstr ""
1480
1481 #. type: Plain text
1482 #: build/C/man3/strcat.3:103
1483 msgid ""
1484 "The B<strcat>()  and B<strncat>()  functions return a pointer to the "
1485 "resulting string I<dest>."
1486 msgstr ""
1487
1488 #. type: Plain text
1489 #: build/C/man3/strcat.3:105 build/C/man3/strcmp.3:67 build/C/man3/strcoll.3:60 build/C/man3/strcpy.3:106 build/C/man3/strlen.3:50 build/C/man3/strpbrk.3:52 build/C/man3/strspn.3:67 build/C/man3/strxfrm.3:66
1490 msgid "SVr4, 4.3BSD, C89, C99."
1491 msgstr ""
1492
1493 #. type: Plain text
1494 #: build/C/man3/strcat.3:107 build/C/man3/strcpy.3:146
1495 msgid "Some systems (the BSDs, Solaris, and others) provide the following function:"
1496 msgstr ""
1497
1498 #. type: Plain text
1499 #: build/C/man3/strcat.3:109
1500 #, no-wrap
1501 msgid "    size_t strlcat(char *dest, const char *src, size_t size);\n"
1502 msgstr ""
1503
1504 #.  https://lwn.net/Articles/506530/
1505 #. type: Plain text
1506 #: build/C/man3/strcat.3:142
1507 msgid ""
1508 "This function appends the null-terminated string I<src> to the string "
1509 "I<dest>, copying at most I<size-strlen(dest)-1> from I<src>, and adds a null "
1510 "terminator to the result, I<unless> I<size> is less than I<strlen(dest)>.  "
1511 "This function fixes the buffer overrun problem of B<strcat>(), but the "
1512 "caller must still handle the possibility of data loss if I<size> is too "
1513 "small.  The function returns the length of the string B<strlcat>()  tried to "
1514 "create; if the return value is greater than or equal to I<size>, data loss "
1515 "occurred.  If data loss matters, the caller I<must> either check the "
1516 "arguments before the call, or test the function return value.  B<strlcat>()  "
1517 "is not present in glibc and is not standardized by POSIX, but is available "
1518 "on Linux via the I<libbsd> library."
1519 msgstr ""
1520
1521 #. type: Plain text
1522 #: build/C/man3/strcat.3:151
1523 msgid ""
1524 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<strcpy>(3), B<string>(3), "
1525 "B<strncpy>(3), B<wcscat>(3), B<wcsncat>(3)"
1526 msgstr ""
1527
1528 #. type: TH
1529 #: build/C/man3/strchr.3:33
1530 #, no-wrap
1531 msgid "STRCHR"
1532 msgstr ""
1533
1534 #. type: TH
1535 #: build/C/man3/strchr.3:33
1536 #, no-wrap
1537 msgid "2012-04-24"
1538 msgstr ""
1539
1540 #. type: Plain text
1541 #: build/C/man3/strchr.3:36
1542 msgid "strchr, strrchr, strchrnul - locate character in string"
1543 msgstr ""
1544
1545 #. type: Plain text
1546 #: build/C/man3/strchr.3:41 build/C/man3/string.3:55
1547 #, no-wrap
1548 msgid "B<char *strchr(const char *>I<s>B<, int >I<c>B<);>\n"
1549 msgstr ""
1550
1551 #. type: Plain text
1552 #: build/C/man3/strchr.3:43 build/C/man3/string.3:79
1553 #, no-wrap
1554 msgid "B<char *strrchr(const char *>I<s>B<, int >I<c>B<);>\n"
1555 msgstr ""
1556
1557 #. type: Plain text
1558 #: build/C/man3/strchr.3:48
1559 #, no-wrap
1560 msgid "B<char *strchrnul(const char *>I<s>B<, int >I<c>B<);>\n"
1561 msgstr ""
1562
1563 #. type: Plain text
1564 #: build/C/man3/strchr.3:57
1565 msgid ""
1566 "The B<strchr>()  function returns a pointer to the first occurrence of the "
1567 "character I<c> in the string I<s>."
1568 msgstr ""
1569
1570 #. type: Plain text
1571 #: build/C/man3/strchr.3:65
1572 msgid ""
1573 "The B<strrchr>()  function returns a pointer to the last occurrence of the "
1574 "character I<c> in the string I<s>."
1575 msgstr ""
1576
1577 #. type: Plain text
1578 #: build/C/man3/strchr.3:78
1579 msgid ""
1580 "The B<strchrnul>()  function is like B<strchr>()  except that if I<c> is not "
1581 "found in I<s>, then it returns a pointer to the null byte at the end of "
1582 "I<s>, rather than NULL."
1583 msgstr ""
1584
1585 #. type: Plain text
1586 #: build/C/man3/strchr.3:81
1587 msgid ""
1588 "Here \"character\" means \"byte\"; these functions do not work with wide or "
1589 "multibyte characters."
1590 msgstr ""
1591
1592 #. type: Plain text
1593 #: build/C/man3/strchr.3:93
1594 msgid ""
1595 "The B<strchr>()  and B<strrchr>()  functions return a pointer to the matched "
1596 "character or NULL if the character is not found.  The terminating null byte "
1597 "is considered part of the string, so that if I<c> is specified as "
1598 "\\(aq\\e0\\(aq, these functions return a pointer to the terminator."
1599 msgstr ""
1600
1601 #. type: Plain text
1602 #: build/C/man3/strchr.3:101
1603 msgid ""
1604 "The B<strchrnul>()  function returns a pointer to the matched character, or "
1605 "a pointer to the null byte at the end of I<s> (i.e., I<s+strlen(s)>)  if the "
1606 "character is not found."
1607 msgstr ""
1608
1609 #. type: Plain text
1610 #: build/C/man3/strchr.3:104
1611 msgid "B<strchrnul>()  first appeared in glibc in version 2.1.1."
1612 msgstr ""
1613
1614 #. type: Plain text
1615 #: build/C/man3/strchr.3:111
1616 msgid ""
1617 "B<strchr>()  and B<strrchr>()  are in SVr4, 4.3BSD, C89, C99.  "
1618 "B<strchrnul>()  is a GNU extension."
1619 msgstr ""
1620
1621 #. type: Plain text
1622 #: build/C/man3/strchr.3:124
1623 msgid ""
1624 "B<index>(3), B<memchr>(3), B<rindex>(3), B<string>(3), B<strlen>(3), "
1625 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), "
1626 "B<wcschr>(3), B<wcsrchr>(3)"
1627 msgstr ""
1628
1629 #. type: TH
1630 #: build/C/man3/strcmp.3:32
1631 #, no-wrap
1632 msgid "STRCMP"
1633 msgstr ""
1634
1635 #. type: Plain text
1636 #: build/C/man3/strcmp.3:35
1637 msgid "strcmp, strncmp - compare two strings"
1638 msgstr ""
1639
1640 #. type: Plain text
1641 #: build/C/man3/strcmp.3:40 build/C/man3/string.3:57
1642 #, no-wrap
1643 msgid "B<int strcmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1644 msgstr ""
1645
1646 #. type: Plain text
1647 #: build/C/man3/strcmp.3:42 build/C/man3/string.3:73
1648 #, no-wrap
1649 msgid ""
1650 "B<int strncmp(const char *>I<s1>B<, const char *>I<s2>B<, size_t "
1651 ">I<n>B<);>\n"
1652 msgstr ""
1653
1654 #. type: Plain text
1655 #: build/C/man3/strcmp.3:51
1656 msgid ""
1657 "The B<strcmp>()  function compares the two strings I<s1> and I<s2>.  It "
1658 "returns an integer less than, equal to, or greater than zero if I<s1> is "
1659 "found, respectively, to be less than, to match, or be greater than I<s2>."
1660 msgstr ""
1661
1662 #. type: Plain text
1663 #: build/C/man3/strcmp.3:56
1664 msgid ""
1665 "The B<strncmp>()  function is similar, except it only compares the first (at "
1666 "most) I<n> bytes of I<s1> and I<s2>."
1667 msgstr ""
1668
1669 #. type: Plain text
1670 #: build/C/man3/strcmp.3:65
1671 msgid ""
1672 "The B<strcmp>()  and B<strncmp>()  functions return an integer less than, "
1673 "equal to, or greater than zero if I<s1> (or the first I<n> bytes thereof) is "
1674 "found, respectively, to be less than, to match, or be greater than I<s2>."
1675 msgstr ""
1676
1677 #. type: Plain text
1678 #: build/C/man3/strcmp.3:77
1679 msgid ""
1680 "B<bcmp>(3), B<memcmp>(3), B<strcasecmp>(3), B<strcoll>(3), B<string>(3), "
1681 "B<strncasecmp>(3), B<strverscmp>(3), B<wcscmp>(3), B<wcsncmp>(3)"
1682 msgstr ""
1683
1684 #. type: TH
1685 #: build/C/man3/strcoll.3:30
1686 #, no-wrap
1687 msgid "STRCOLL"
1688 msgstr ""
1689
1690 #. type: Plain text
1691 #: build/C/man3/strcoll.3:33
1692 msgid "strcoll - compare two strings using the current locale"
1693 msgstr ""
1694
1695 #. type: Plain text
1696 #: build/C/man3/strcoll.3:38 build/C/man3/string.3:59
1697 #, no-wrap
1698 msgid "B<int strcoll(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
1699 msgstr ""
1700
1701 #. type: Plain text
1702 #: build/C/man3/strcoll.3:51
1703 msgid ""
1704 "The B<strcoll>()  function compares the two strings I<s1> and I<s2>.  It "
1705 "returns an integer less than, equal to, or greater than zero if I<s1> is "
1706 "found, respectively, to be less than, to match, or be greater than I<s2>.  "
1707 "The comparison is based on strings interpreted as appropriate for the "
1708 "program's current locale for category B<LC_COLLATE>.  (See B<setlocale>(3).)"
1709 msgstr ""
1710
1711 #. type: Plain text
1712 #: build/C/man3/strcoll.3:58
1713 msgid ""
1714 "The B<strcoll>()  function returns an integer less than, equal to, or "
1715 "greater than zero if I<s1> is found, respectively, to be less than, to "
1716 "match, or be greater than I<s2>, when both are interpreted as appropriate "
1717 "for the current locale."
1718 msgstr ""
1719
1720 #. type: Plain text
1721 #: build/C/man3/strcoll.3:65
1722 msgid ""
1723 "In the I<\"POSIX\"> or I<\"C\"> locales B<strcoll>()  is equivalent to "
1724 "B<strcmp>(3)."
1725 msgstr ""
1726
1727 #. type: Plain text
1728 #: build/C/man3/strcoll.3:73
1729 msgid ""
1730 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
1731 "B<string>(3), B<strxfrm>(3)"
1732 msgstr ""
1733
1734 #. type: TH
1735 #: build/C/man3/strcpy.3:35
1736 #, no-wrap
1737 msgid "STRCPY"
1738 msgstr ""
1739
1740 #. type: Plain text
1741 #: build/C/man3/strcpy.3:38
1742 msgid "strcpy, strncpy - copy a string"
1743 msgstr ""
1744
1745 #. type: Plain text
1746 #: build/C/man3/strcpy.3:43 build/C/man3/string.3:61
1747 #, no-wrap
1748 msgid "B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>\n"
1749 msgstr ""
1750
1751 #. type: Plain text
1752 #: build/C/man3/strcpy.3:45 build/C/man3/string.3:75
1753 #, no-wrap
1754 msgid "B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
1755 msgstr ""
1756
1757 #. type: Plain text
1758 #: build/C/man3/strcpy.3:56
1759 msgid ""
1760 "The B<strcpy>()  function copies the string pointed to by I<src>, including "
1761 "the terminating null byte (\\(aq\\e0\\(aq), to the buffer pointed to by "
1762 "I<dest>.  The strings may not overlap, and the destination string I<dest> "
1763 "must be large enough to receive the copy.  I<Beware of buffer overruns!> "
1764 "(See BUGS.)"
1765 msgstr ""
1766
1767 #. type: Plain text
1768 #: build/C/man3/strcpy.3:65
1769 msgid ""
1770 "The B<strncpy>()  function is similar, except that at most I<n> bytes of "
1771 "I<src> are copied.  B<Warning>: If there is no null byte among the first "
1772 "I<n> bytes of I<src>, the string placed in I<dest> will not be "
1773 "null-terminated."
1774 msgstr ""
1775
1776 #. type: Plain text
1777 #: build/C/man3/strcpy.3:76
1778 msgid ""
1779 "If the length of I<src> is less than I<n>, B<strncpy>()  writes additional "
1780 "null bytes to I<dest> to ensure that a total of I<n> bytes are written."
1781 msgstr ""
1782
1783 #. type: Plain text
1784 #: build/C/man3/strcpy.3:80
1785 msgid "A simple implementation of B<strncpy>()  might be:"
1786 msgstr ""
1787
1788 #. type: Plain text
1789 #: build/C/man3/strcpy.3:87
1790 #, no-wrap
1791 msgid ""
1792 "char *\n"
1793 "strncpy(char *dest, const char *src, size_t n)\n"
1794 "{\n"
1795 "    size_t i;\n"
1796 msgstr ""
1797
1798 #. type: Plain text
1799 #: build/C/man3/strcpy.3:92
1800 #, no-wrap
1801 msgid ""
1802 "    for (i = 0; i E<lt> n && src[i] != \\(aq\\e0\\(aq; i++)\n"
1803 "        dest[i] = src[i];\n"
1804 "    for ( ; i E<lt> n; i++)\n"
1805 "        dest[i] = \\(aq\\e0\\(aq;\n"
1806 msgstr ""
1807
1808 #. type: Plain text
1809 #: build/C/man3/strcpy.3:104
1810 msgid ""
1811 "The B<strcpy>()  and B<strncpy>()  functions return a pointer to the "
1812 "destination string I<dest>."
1813 msgstr ""
1814
1815 #. type: Plain text
1816 #: build/C/man3/strcpy.3:115
1817 msgid ""
1818 "Some programmers consider B<strncpy>()  to be inefficient and error prone.  "
1819 "If the programmer knows (i.e., includes code to test!)  that the size of "
1820 "I<dest> is greater than the length of I<src>, then B<strcpy>()  can be used."
1821 msgstr ""
1822
1823 #. type: Plain text
1824 #: build/C/man3/strcpy.3:124
1825 msgid ""
1826 "One valid (and intended) use of B<strncpy>()  is to copy a C string to a "
1827 "fixed-length buffer while ensuring both that the buffer is not overflowed "
1828 "and that unused bytes in the target buffer are zeroed out (perhaps to "
1829 "prevent information leaks if the buffer is to be written to media or "
1830 "transmitted to another process via an interprocess communication technique)."
1831 msgstr ""
1832
1833 #. type: Plain text
1834 #: build/C/man3/strcpy.3:130
1835 msgid ""
1836 "If there is no terminating null byte in the first I<n> bytes of I<src>, "
1837 "B<strncpy>()  produces an unterminated string in I<dest>.  You can force "
1838 "termination using something like the following:"
1839 msgstr ""
1840
1841 #. type: Plain text
1842 #: build/C/man3/strcpy.3:136
1843 #, no-wrap
1844 msgid ""
1845 "strncpy(buf, str, n);\n"
1846 "if (n E<gt> 0)\n"
1847 "    buf[n - 1]= \\(aq\\e0\\(aq;\n"
1848 msgstr ""
1849
1850 #. type: Plain text
1851 #: build/C/man3/strcpy.3:144
1852 msgid ""
1853 "(Of course, the above technique ignores the fact that information contained "
1854 "in I<src> is lost in the copying to I<dest>.)"
1855 msgstr ""
1856
1857 #. type: Plain text
1858 #: build/C/man3/strcpy.3:148
1859 #, no-wrap
1860 msgid "    size_t strlcpy(char *dest, const char *src, size_t size);\n"
1861 msgstr ""
1862
1863 #.  http://static.usenix.org/event/usenix99/full_papers/millert/millert_html/index.html
1864 #.      "strlcpy and strlcat - consistent, safe, string copy and concatenation"
1865 #.      1999 USENIX Annual Technical Conference
1866 #.  https://lwn.net/Articles/506530/
1867 #. type: Plain text
1868 #: build/C/man3/strcpy.3:183
1869 msgid ""
1870 "This function is similar to B<strncpy>(), but it copies at most I<size-1> "
1871 "bytes to I<dest>, always adds a terminating null byte, and does not pad the "
1872 "target with (further) null bytes.  This function fixes some of the problems "
1873 "of B<strcpy>()  and B<strncpy>(), but the caller must still handle the "
1874 "possibility of data loss if I<size> is too small.  The return value of the "
1875 "function is the length of I<src>, which allows truncation to be easily "
1876 "detected: if the return value is greater than or equal to I<size>, "
1877 "truncation occurred.  If loss of data matters, the caller I<must> either "
1878 "check the arguments before the call, or test the function return value.  "
1879 "B<strlcpy>()  is not present in glibc and is not standardized by POSIX, but "
1880 "is available on Linux via the I<libbsd> library."
1881 msgstr ""
1882
1883 #. type: Plain text
1884 #: build/C/man3/strcpy.3:194
1885 msgid ""
1886 "If the destination string of a B<strcpy>()  is not large enough, then "
1887 "anything might happen.  Overflowing fixed-length string buffers is a "
1888 "favorite cracker technique for taking complete control of the machine.  Any "
1889 "time a program reads or copies data into a buffer, the program first needs "
1890 "to check that there's enough space.  This may be unnecessary if you can show "
1891 "that overflow is impossible, but be careful: programs can get changed over "
1892 "time, in ways that may make the impossible possible."
1893 msgstr ""
1894
1895 #. type: Plain text
1896 #: build/C/man3/strcpy.3:205
1897 msgid ""
1898 "B<bcopy>(3), B<memccpy>(3), B<memcpy>(3), B<memmove>(3), B<stpcpy>(3), "
1899 "B<stpncpy>(3), B<strdup>(3), B<string>(3), B<wcscpy>(3), B<wcsncpy>(3)"
1900 msgstr ""
1901
1902 #. type: TH
1903 #: build/C/man3/strdup.3:31
1904 #, no-wrap
1905 msgid "STRDUP"
1906 msgstr ""
1907
1908 #. type: Plain text
1909 #: build/C/man3/strdup.3:34
1910 msgid "strdup, strndup, strdupa, strndupa - duplicate a string"
1911 msgstr ""
1912
1913 #. type: Plain text
1914 #: build/C/man3/strdup.3:39 build/C/man3/string.3:65
1915 #, no-wrap
1916 msgid "B<char *strdup(const char *>I<s>B<);>\n"
1917 msgstr ""
1918
1919 #. type: Plain text
1920 #: build/C/man3/strdup.3:41
1921 #, no-wrap
1922 msgid "B<char *strndup(const char *>I<s>B<, size_t >I<n>B<);>\n"
1923 msgstr ""
1924
1925 #. type: Plain text
1926 #: build/C/man3/strdup.3:43
1927 #, no-wrap
1928 msgid "B<char *strdupa(const char *>I<s>B<);>\n"
1929 msgstr ""
1930
1931 #. type: Plain text
1932 #: build/C/man3/strdup.3:45
1933 #, no-wrap
1934 msgid "B<char *strndupa(const char *>I<s>B<, size_t >I<n>B<);>\n"
1935 msgstr ""
1936
1937 #. type: Plain text
1938 #: build/C/man3/strdup.3:55
1939 msgid "B<strdup>():"
1940 msgstr ""
1941
1942 #. type: Plain text
1943 #: build/C/man3/strdup.3:58
1944 msgid ""
1945 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
1946 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1947 msgstr ""
1948
1949 #. type: Plain text
1950 #: build/C/man3/strdup.3:60
1951 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1952 msgstr ""
1953
1954 #. type: Plain text
1955 #: build/C/man3/strdup.3:63
1956 msgid "B<strndup>():"
1957 msgstr ""
1958
1959 #. type: Plain text
1960 #: build/C/man3/strdup.3:67
1961 msgid "POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700"
1962 msgstr ""
1963
1964 #. type: Plain text
1965 #: build/C/man3/strdup.3:75
1966 msgid "B<strdupa>(), B<strndupa>(): _GNU_SOURCE"
1967 msgstr ""
1968
1969 #. type: Plain text
1970 #: build/C/man3/strdup.3:87
1971 msgid ""
1972 "The B<strdup>()  function returns a pointer to a new string which is a "
1973 "duplicate of the string I<s>.  Memory for the new string is obtained with "
1974 "B<malloc>(3), and can be freed with B<free>(3)."
1975 msgstr ""
1976
1977 #. type: Plain text
1978 #: build/C/man3/strdup.3:94
1979 msgid ""
1980 "The B<strndup>()  function is similar, but only copies at most I<n> bytes.  "
1981 "If I<s> is longer than I<n>, only I<n> bytes are copied, and a terminating "
1982 "null byte (\\(aq\\e0\\(aq) is added."
1983 msgstr ""
1984
1985 #. type: Plain text
1986 #: build/C/man3/strdup.3:104
1987 msgid ""
1988 "B<strdupa>()  and B<strndupa>()  are similar, but use B<alloca>(3)  to "
1989 "allocate the buffer.  They are only available when using the GNU GCC suite, "
1990 "and suffer from the same limitations described in B<alloca>(3)."
1991 msgstr ""
1992
1993 #. type: Plain text
1994 #: build/C/man3/strdup.3:109
1995 msgid ""
1996 "The B<strdup>()  function returns a pointer to the duplicated string, or "
1997 "NULL if insufficient memory was available."
1998 msgstr ""
1999
2000 #. type: SH
2001 #: build/C/man3/strdup.3:109 build/C/man3/strerror.3:166
2002 #, no-wrap
2003 msgid "ERRORS"
2004 msgstr ""
2005
2006 #. type: TP
2007 #: build/C/man3/strdup.3:110
2008 #, no-wrap
2009 msgid "B<ENOMEM>"
2010 msgstr ""
2011
2012 #. type: Plain text
2013 #: build/C/man3/strdup.3:113
2014 msgid "Insufficient memory available to allocate duplicate string."
2015 msgstr ""
2016
2017 #.  4.3BSD-Reno, not (first) 4.3BSD.
2018 #. type: Plain text
2019 #: build/C/man3/strdup.3:123
2020 msgid ""
2021 "B<strdup>()  conforms to SVr4, 4.3BSD, POSIX.1-2001.  B<strndup>()  conforms "
2022 "to POSIX.1-2008.  B<strdupa>()  and B<strndupa>()  are GNU extensions."
2023 msgstr ""
2024
2025 #. type: Plain text
2026 #: build/C/man3/strdup.3:131
2027 msgid ""
2028 "B<alloca>(3), B<calloc>(3), B<free>(3), B<malloc>(3), B<realloc>(3), "
2029 "B<string>(3), B<wcsdup>(3)"
2030 msgstr ""
2031
2032 #. type: TH
2033 #: build/C/man3/strerror.3:39
2034 #, no-wrap
2035 msgid "STRERROR"
2036 msgstr ""
2037
2038 #. type: TH
2039 #: build/C/man3/strerror.3:39
2040 #, no-wrap
2041 msgid "2012-04-22"
2042 msgstr ""
2043
2044 #. type: Plain text
2045 #: build/C/man3/strerror.3:42
2046 msgid "strerror, strerror_r - return string describing error number"
2047 msgstr ""
2048
2049 #. type: Plain text
2050 #: build/C/man3/strerror.3:47
2051 #, no-wrap
2052 msgid "B<char *strerror(int >I<errnum>B<);>\n"
2053 msgstr ""
2054
2055 #. type: Plain text
2056 #: build/C/man3/strerror.3:50
2057 #, no-wrap
2058 msgid ""
2059 "B<int strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t >I<buflen>B<);>\n"
2060 "            /* XSI-compliant */\n"
2061 msgstr ""
2062
2063 #. type: Plain text
2064 #: build/C/man3/strerror.3:53
2065 #, no-wrap
2066 msgid ""
2067 "B<char *strerror_r(int >I<errnum>B<, char *>I<buf>B<, size_t "
2068 ">I<buflen>B<);>\n"
2069 "            /* GNU-specific */\n"
2070 msgstr ""
2071
2072 #. type: Plain text
2073 #: build/C/man3/strerror.3:63
2074 msgid "The XSI-compliant version of B<strerror_r>()  is provided if:"
2075 msgstr ""
2076
2077 #. type: Plain text
2078 #: build/C/man3/strerror.3:65
2079 msgid ""
2080 "(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600) && !\\ "
2081 "_GNU_SOURCE"
2082 msgstr ""
2083
2084 #. type: Plain text
2085 #: build/C/man3/strerror.3:67
2086 msgid "Otherwise, the GNU-specific version is provided."
2087 msgstr ""
2088
2089 #. type: Plain text
2090 #: build/C/man3/strerror.3:87
2091 msgid ""
2092 "The B<strerror>()  function returns a pointer to a string that describes the "
2093 "error code passed in the argument I<errnum>, possibly using the "
2094 "B<LC_MESSAGES> part of the current locale to select the appropriate "
2095 "language.  (For example, if I<errnum> is B<EINVAL>, the returned description "
2096 "will \"Invalid argument\".)  This string must not be modified by the "
2097 "application, but may be modified by a subsequent call to B<strerror>().  No "
2098 "library function, including B<perror>(3), will modify this string."
2099 msgstr ""
2100
2101 #. type: Plain text
2102 #: build/C/man3/strerror.3:108
2103 msgid ""
2104 "The B<strerror_r>()  function is similar to B<strerror>(), but is thread "
2105 "safe.  This function is available in two versions: an XSI-compliant version "
2106 "specified in POSIX.1-2001 (available since glibc 2.3.4, but not "
2107 "POSIX-compliant until glibc 2.13), and a GNU-specific version (available "
2108 "since glibc 2.0).  The XSI-compliant version is provided with the feature "
2109 "test macros settings shown in the SYNOPSIS; otherwise the GNU-specific "
2110 "version is provided.  If no feature test macros are explicitly defined, then "
2111 "(since glibc 2.4)  B<_POSIX_SOURCE> is defined by default with the value "
2112 "200112L, so that the XSI-compliant version of B<strerror_r>()  is provided "
2113 "by default."
2114 msgstr ""
2115
2116 #. type: Plain text
2117 #: build/C/man3/strerror.3:116
2118 msgid ""
2119 "The XSI-compliant B<strerror_r>()  is preferred for portable applications.  "
2120 "It returns the error string in the user-supplied buffer I<buf> of length "
2121 "I<buflen>."
2122 msgstr ""
2123
2124 #. type: Plain text
2125 #: build/C/man3/strerror.3:136
2126 msgid ""
2127 "The GNU-specific B<strerror_r>()  returns a pointer to a string containing "
2128 "the error message.  This may be either a pointer to a string that the "
2129 "function stores in I<buf>, or a pointer to some (immutable) static string "
2130 "(in which case I<buf> is unused).  If the function stores a string in "
2131 "I<buf>, then at most I<buflen> bytes are stored (the string may be truncated "
2132 "if I<buflen> is too small and I<errnum> is unknown).  The string always "
2133 "includes a terminating null byte."
2134 msgstr ""
2135
2136 #. type: Plain text
2137 #: build/C/man3/strerror.3:144
2138 msgid ""
2139 "The B<strerror>()  and the GNU-specific B<strerror_r>()  functions return "
2140 "the appropriate error description string, or an \"Unknown error nnn\" "
2141 "message if the error number is unknown."
2142 msgstr ""
2143
2144 #. type: Plain text
2145 #: build/C/man3/strerror.3:157
2146 msgid ""
2147 "POSIX.1-2001 and POSIX.1-2008 require that a successful call to "
2148 "B<strerror>()  shall leave I<errno> unchanged, and note that, since no "
2149 "function return value is reserved to indicate an error, an application that "
2150 "wishes to check for errors should initialize I<errno> to zero before the "
2151 "call, and then check I<errno> after the call."
2152 msgstr ""
2153
2154 #. type: Plain text
2155 #: build/C/man3/strerror.3:166
2156 msgid ""
2157 "The XSI-compliant B<strerror_r>()  function returns 0 on success.  On error, "
2158 "a (positive) error number is returned (since glibc 2.13), or -1 is returned "
2159 "and I<errno> is set to indicate the error (glibc versions before 2.13)."
2160 msgstr ""
2161
2162 #. type: TP
2163 #: build/C/man3/strerror.3:167
2164 #, no-wrap
2165 msgid "B<EINVAL>"
2166 msgstr ""
2167
2168 #. type: Plain text
2169 #: build/C/man3/strerror.3:172
2170 msgid "The value of I<errnum> is not a valid error number."
2171 msgstr ""
2172
2173 #. type: TP
2174 #: build/C/man3/strerror.3:172
2175 #, no-wrap
2176 msgid "B<ERANGE>"
2177 msgstr ""
2178
2179 #. type: Plain text
2180 #: build/C/man3/strerror.3:175
2181 msgid "Insufficient storage was supplied to contain the error description string."
2182 msgstr ""
2183
2184 #. type: Plain text
2185 #: build/C/man3/strerror.3:180
2186 msgid ""
2187 "B<strerror>()  is specified by POSIX.1-2001, C89, C99.  B<strerror_r>()  is "
2188 "specified by POSIX.1-2001."
2189 msgstr ""
2190
2191 #. type: Plain text
2192 #: build/C/man3/strerror.3:184
2193 msgid "The GNU-specific B<strerror_r>()  function is a nonstandard extension."
2194 msgstr ""
2195
2196 #.  e.g., Solaris 8, HP-UX 11
2197 #.  e.g., FreeBSD 5.4, Tru64 5.1B
2198 #. type: Plain text
2199 #: build/C/man3/strerror.3:204
2200 msgid ""
2201 "POSIX.1-2001 permits B<strerror>()  to set I<errno> if the call encounters "
2202 "an error, but does not specify what value should be returned as the function "
2203 "result in the event of an error.  On some systems, B<strerror>()  returns "
2204 "NULL if the error number is unknown.  On other systems, B<strerror>()  "
2205 "returns a string something like \"Error nnn occurred\" and sets I<errno> to "
2206 "B<EINVAL> if the error number is unknown.  C99 and POSIX.1-2008 require the "
2207 "return value to be non-NULL."
2208 msgstr ""
2209
2210 #. type: Plain text
2211 #: build/C/man3/strerror.3:210
2212 msgid "B<err>(3), B<errno>(3), B<error>(3), B<perror>(3), B<strsignal>(3)"
2213 msgstr ""
2214
2215 #. type: TH
2216 #: build/C/man3/strfry.3:30
2217 #, no-wrap
2218 msgid "STRFRY"
2219 msgstr ""
2220
2221 #. type: Plain text
2222 #: build/C/man3/strfry.3:33
2223 msgid "strfry - randomize a string"
2224 msgstr ""
2225
2226 #. type: Plain text
2227 #: build/C/man3/strfry.3:40 build/C/man3/string.3:67
2228 #, no-wrap
2229 msgid "B<char *strfry(char *>I<string>B<);>\n"
2230 msgstr ""
2231
2232 #. type: Plain text
2233 #: build/C/man3/strfry.3:49
2234 msgid ""
2235 "The B<strfry>()  function randomizes the contents of I<string> by using "
2236 "B<rand>(3)  to randomly swap characters in the string.  The result is an "
2237 "anagram of I<string>."
2238 msgstr ""
2239
2240 #. type: Plain text
2241 #: build/C/man3/strfry.3:54
2242 msgid "The B<strfry>()  functions returns a pointer to the randomized string."
2243 msgstr ""
2244
2245 #. type: Plain text
2246 #: build/C/man3/strfry.3:59
2247 msgid "The B<strfry>()  function is unique to the GNU C Library."
2248 msgstr ""
2249
2250 #. type: Plain text
2251 #: build/C/man3/strfry.3:62
2252 msgid "B<memfrob>(3), B<string>(3)"
2253 msgstr ""
2254
2255 #. type: TH
2256 #: build/C/man3/string.3:30
2257 #, no-wrap
2258 msgid "STRING"
2259 msgstr ""
2260
2261 #. type: TH
2262 #: build/C/man3/string.3:30
2263 #, no-wrap
2264 msgid "2010-02-25"
2265 msgstr ""
2266
2267 #. type: Plain text
2268 #: build/C/man3/string.3:36
2269 msgid ""
2270 "stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, "
2271 "strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, "
2272 "strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - string "
2273 "operations"
2274 msgstr ""
2275
2276 #. type: Plain text
2277 #: build/C/man3/string.3:63 build/C/man3/strspn.3:40
2278 #, no-wrap
2279 msgid "B<size_t strcspn(const char *>I<s>B<, const char *>I<reject>B<);>\n"
2280 msgstr ""
2281
2282 #. type: Plain text
2283 #: build/C/man3/string.3:69 build/C/man3/strlen.3:38
2284 #, no-wrap
2285 msgid "B<size_t strlen(const char *>I<s>B<);>\n"
2286 msgstr ""
2287
2288 #. type: Plain text
2289 #: build/C/man3/string.3:77 build/C/man3/strpbrk.3:38
2290 #, no-wrap
2291 msgid "B<char *strpbrk(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2292 msgstr ""
2293
2294 #. type: Plain text
2295 #: build/C/man3/string.3:81 build/C/man3/strsep.3:41
2296 #, no-wrap
2297 msgid "B<char *strsep(char **>I<stringp>B<, const char *>I<delim>B<);>\n"
2298 msgstr ""
2299
2300 #. type: Plain text
2301 #: build/C/man3/string.3:83 build/C/man3/strspn.3:38
2302 #, no-wrap
2303 msgid "B<size_t strspn(const char *>I<s>B<, const char *>I<accept>B<);>\n"
2304 msgstr ""
2305
2306 #. type: Plain text
2307 #: build/C/man3/string.3:85 build/C/man3/strstr.3:41
2308 #, no-wrap
2309 msgid "B<char *strstr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
2310 msgstr ""
2311
2312 #. type: Plain text
2313 #: build/C/man3/string.3:87
2314 #, no-wrap
2315 msgid "B<char *strtok(char *>I<s>B<, const char *>I<delim>B<);>\n"
2316 msgstr ""
2317
2318 #. type: Plain text
2319 #: build/C/man3/string.3:89 build/C/man3/strxfrm.3:38
2320 #, no-wrap
2321 msgid ""
2322 "B<size_t strxfrm(char *>I<dest>B<, const char *>I<src>B<, size_t "
2323 ">I<n>B<);>\n"
2324 msgstr ""
2325
2326 #. type: Plain text
2327 #: build/C/man3/string.3:94
2328 msgid ""
2329 "The string functions perform string operations on null-terminated strings.  "
2330 "See the individual man pages for descriptions of each function."
2331 msgstr ""
2332
2333 #. type: Plain text
2334 #: build/C/man3/string.3:119
2335 msgid ""
2336 "B<index>(3), B<rindex>(3), B<stpcpy>(3), B<strcasecmp>(3), B<strcat>(3), "
2337 "B<strchr>(3), B<strcmp>(3), B<strcoll>(3), B<strcpy>(3), B<strcspn>(3), "
2338 "B<strdup>(3), B<strfry>(3), B<strlen>(3), B<strncasecmp>(3), B<strncat>(3), "
2339 "B<strncmp>(3), B<strncpy>(3), B<strpbrk>(3), B<strrchr>(3), B<strsep>(3), "
2340 "B<strspn>(3), B<strstr>(3), B<strtok>(3), B<strxfrm>(3)"
2341 msgstr ""
2342
2343 #. type: TH
2344 #: build/C/man3/strlen.3:30
2345 #, no-wrap
2346 msgid "STRLEN"
2347 msgstr ""
2348
2349 #. type: TH
2350 #: build/C/man3/strlen.3:30
2351 #, no-wrap
2352 msgid "2012-05-04"
2353 msgstr ""
2354
2355 #. type: Plain text
2356 #: build/C/man3/strlen.3:33
2357 msgid "strlen - calculate the length of a string"
2358 msgstr ""
2359
2360 #. type: Plain text
2361 #: build/C/man3/strlen.3:44
2362 msgid ""
2363 "The B<strlen>()  function calculates the length of the string I<s>, "
2364 "excluding the terminating null byte (\\(aq\\e0\\(aq)."
2365 msgstr ""
2366
2367 #. type: Plain text
2368 #: build/C/man3/strlen.3:48
2369 msgid "The B<strlen>()  function returns the number of bytes in the string I<s>."
2370 msgstr ""
2371
2372 #. type: Plain text
2373 #: build/C/man3/strlen.3:55
2374 msgid "B<string>(3), B<strnlen>(3), B<wcslen>(3), B<wcsnlen>(3)"
2375 msgstr ""
2376
2377 #. type: TH
2378 #: build/C/man3/strnlen.3:13
2379 #, no-wrap
2380 msgid "STRNLEN"
2381 msgstr ""
2382
2383 #. type: Plain text
2384 #: build/C/man3/strnlen.3:16
2385 msgid "strnlen - determine the length of a fixed-size string"
2386 msgstr ""
2387
2388 #. type: Plain text
2389 #: build/C/man3/strnlen.3:21
2390 #, no-wrap
2391 msgid "B<size_t strnlen(const char *>I<s>B<, size_t >I<maxlen>B<);>\n"
2392 msgstr ""
2393
2394 #. type: Plain text
2395 #: build/C/man3/strnlen.3:29
2396 msgid "B<strnlen>():"
2397 msgstr ""
2398
2399 #. type: Plain text
2400 #: build/C/man3/strnlen.3:51
2401 msgid ""
2402 "The B<strnlen>()  function returns the number of bytes in the string pointed "
2403 "to by I<s>, excluding the terminating null bye (\\(aq\\e0\\(aq), but at most "
2404 "I<maxlen>.  In doing this, B<strnlen>()  looks only at the first I<maxlen> "
2405 "bytes at I<s> and never beyond I<s+maxlen>."
2406 msgstr ""
2407
2408 #. type: Plain text
2409 #: build/C/man3/strnlen.3:58
2410 msgid ""
2411 "The B<strnlen>()  function returns I<strlen(s)>, if that is less than "
2412 "I<maxlen>, or I<maxlen> if there is no null byte (\\(aq\\e0\\(aq) among the "
2413 "first I<maxlen> bytes pointed to by I<s>."
2414 msgstr ""
2415
2416 #. type: Plain text
2417 #: build/C/man3/strnlen.3:60
2418 msgid "POSIX.1-2008."
2419 msgstr ""
2420
2421 #. type: Plain text
2422 #: build/C/man3/strnlen.3:62
2423 msgid "B<strlen>(3)"
2424 msgstr ""
2425
2426 #. type: TH
2427 #: build/C/man3/strpbrk.3:30
2428 #, no-wrap
2429 msgid "STRPBRK"
2430 msgstr ""
2431
2432 #. type: Plain text
2433 #: build/C/man3/strpbrk.3:33
2434 msgid "strpbrk - search a string for any of a set of bytes"
2435 msgstr ""
2436
2437 #. type: Plain text
2438 #: build/C/man3/strpbrk.3:44
2439 msgid ""
2440 "The B<strpbrk>()  function locates the first occurrence in the string I<s> "
2441 "of any of the bytes in the string I<accept>."
2442 msgstr ""
2443
2444 #. type: Plain text
2445 #: build/C/man3/strpbrk.3:50
2446 msgid ""
2447 "The B<strpbrk>()  function returns a pointer to the byte in I<s> that "
2448 "matches one of the bytes in I<accept>, or NULL if no such byte is found."
2449 msgstr ""
2450
2451 #. type: Plain text
2452 #: build/C/man3/strpbrk.3:63
2453 msgid ""
2454 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
2455 "B<strsep>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3), B<wcspbrk>(3)"
2456 msgstr ""
2457
2458 #. type: TH
2459 #: build/C/man3/strsep.3:33
2460 #, no-wrap
2461 msgid "STRSEP"
2462 msgstr ""
2463
2464 #. type: Plain text
2465 #: build/C/man3/strsep.3:36
2466 msgid "strsep - extract token from string"
2467 msgstr ""
2468
2469 #. type: Plain text
2470 #: build/C/man3/strsep.3:50
2471 msgid "B<strsep>(): _BSD_SOURCE"
2472 msgstr ""
2473
2474 #. type: Plain text
2475 #: build/C/man3/strsep.3:63
2476 msgid ""
2477 "If I<*stringp> is NULL, the B<strsep>()  function returns NULL and does "
2478 "nothing else.  Otherwise, this function finds the first token in the string "
2479 "I<*stringp>, where tokens are delimited by symbols in the string I<delim>.  "
2480 "This token is terminated by overwriting the delimiter with a null byte "
2481 "(\\(aq\\e0\\(aq)  and I<*stringp> is updated to point past the token.  In "
2482 "case no delimiter was found, the token is taken to be the entire string "
2483 "I<*stringp>, and I<*stringp> is made NULL."
2484 msgstr ""
2485
2486 #. type: Plain text
2487 #: build/C/man3/strsep.3:68
2488 msgid ""
2489 "The B<strsep>()  function returns a pointer to the token, that is, it "
2490 "returns the original value of I<*stringp>."
2491 msgstr ""
2492
2493 #. type: Plain text
2494 #: build/C/man3/strsep.3:70
2495 msgid "4.4BSD."
2496 msgstr ""
2497
2498 #. type: Plain text
2499 #: build/C/man3/strsep.3:79
2500 msgid ""
2501 "The B<strsep>()  function was introduced as a replacement for B<strtok>(3), "
2502 "since the latter cannot handle empty fields.  However, B<strtok>(3)  "
2503 "conforms to C89/C99 and hence is more portable."
2504 msgstr ""
2505
2506 #. type: Plain text
2507 #: build/C/man3/strsep.3:82
2508 msgid "Be cautious when using this function.  If you do use it, note that:"
2509 msgstr ""
2510
2511 #. type: Plain text
2512 #: build/C/man3/strsep.3:84
2513 msgid "This function modifies its first argument."
2514 msgstr ""
2515
2516 #. type: Plain text
2517 #: build/C/man3/strsep.3:86
2518 msgid "This function cannot be used on constant strings."
2519 msgstr ""
2520
2521 #. type: Plain text
2522 #: build/C/man3/strsep.3:88
2523 msgid "The identity of the delimiting character is lost."
2524 msgstr ""
2525
2526 #. type: Plain text
2527 #: build/C/man3/strsep.3:98
2528 msgid ""
2529 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
2530 "B<strpbrk>(3), B<strspn>(3), B<strstr>(3), B<strtok>(3)"
2531 msgstr ""
2532
2533 #. type: TH
2534 #: build/C/man3/strsignal.3:30
2535 #, no-wrap
2536 msgid "STRSIGNAL"
2537 msgstr ""
2538
2539 #. type: TH
2540 #: build/C/man3/strsignal.3:30
2541 #, no-wrap
2542 msgid "2010-09-15"
2543 msgstr ""
2544
2545 #. type: Plain text
2546 #: build/C/man3/strsignal.3:33
2547 msgid "strsignal - return string describing signal"
2548 msgstr ""
2549
2550 #. type: Plain text
2551 #: build/C/man3/strsignal.3:38
2552 #, no-wrap
2553 msgid "B<char *strsignal(int >I<sig>B<);>\n"
2554 msgstr ""
2555
2556 #. type: Plain text
2557 #: build/C/man3/strsignal.3:40
2558 #, no-wrap
2559 msgid "B<extern const char * const >I<sys_siglist>B<[];>\n"
2560 msgstr ""
2561
2562 #. type: Plain text
2563 #: build/C/man3/strsignal.3:48
2564 msgid "B<strsignal>():"
2565 msgstr ""
2566
2567 #. type: Plain text
2568 #: build/C/man3/strsignal.3:68
2569 msgid ""
2570 "The B<strsignal>()  function returns a string describing the signal number "
2571 "passed in the argument I<sig>.  The string can only be used until the next "
2572 "call to B<strsignal>()."
2573 msgstr ""
2574
2575 #. type: Plain text
2576 #: build/C/man3/strsignal.3:75
2577 msgid ""
2578 "The array I<sys_siglist> holds the signal description strings indexed by "
2579 "signal number.  The B<strsignal>()  function should be used if possible "
2580 "instead of this array."
2581 msgstr ""
2582
2583 #. type: Plain text
2584 #: build/C/man3/strsignal.3:82
2585 msgid ""
2586 "The B<strsignal>()  function returns the appropriate description string, or "
2587 "an unknown signal message if the signal number is invalid.  On some systems "
2588 "(but not on Linux), a NULL pointer may be returned instead for an invalid "
2589 "signal number."
2590 msgstr ""
2591
2592 #. type: Plain text
2593 #: build/C/man3/strsignal.3:85
2594 msgid "POSIX.1-2008.  Present on Solaris and the BSDs."
2595 msgstr ""
2596
2597 #. type: Plain text
2598 #: build/C/man3/strsignal.3:88
2599 msgid "B<psignal>(3), B<strerror>(3)"
2600 msgstr ""
2601
2602 #. type: TH
2603 #: build/C/man3/strspn.3:30
2604 #, no-wrap
2605 msgid "STRSPN"
2606 msgstr ""
2607
2608 #. type: Plain text
2609 #: build/C/man3/strspn.3:33
2610 msgid "strspn, strcspn - search a string for a set of bytes"
2611 msgstr ""
2612
2613 #. type: Plain text
2614 #: build/C/man3/strspn.3:47
2615 msgid ""
2616 "The B<strspn>()  function calculates the length (in bytes) of the initial "
2617 "segment of I<s> which consists entirely of bytes in I<accept>."
2618 msgstr ""
2619
2620 #. type: Plain text
2621 #: build/C/man3/strspn.3:53
2622 msgid ""
2623 "The B<strcspn>()  function calculates the length of the initial segment of "
2624 "I<s> which consists entirely of bytes not in I<reject>."
2625 msgstr ""
2626
2627 #. type: Plain text
2628 #: build/C/man3/strspn.3:59
2629 msgid ""
2630 "The B<strspn>()  function returns the number of bytes in the initial segment "
2631 "of I<s> which consist only of bytes from I<accept>."
2632 msgstr ""
2633
2634 #. type: Plain text
2635 #: build/C/man3/strspn.3:65
2636 msgid ""
2637 "The B<strcspn>()  function returns the number of bytes in the initial "
2638 "segment of I<s> which are not in the string I<reject>."
2639 msgstr ""
2640
2641 #. type: Plain text
2642 #: build/C/man3/strspn.3:79
2643 msgid ""
2644 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
2645 "B<strpbrk>(3), B<strsep>(3), B<strstr>(3), B<strtok>(3), B<wcscspn>(3), "
2646 "B<wcsspn>(3)"
2647 msgstr ""
2648
2649 #. type: TH
2650 #: build/C/man3/strstr.3:33
2651 #, no-wrap
2652 msgid "STRSTR"
2653 msgstr ""
2654
2655 #. type: Plain text
2656 #: build/C/man3/strstr.3:36
2657 msgid "strstr, strcasestr - locate a substring"
2658 msgstr ""
2659
2660 #. type: Plain text
2661 #: build/C/man3/strstr.3:47
2662 #, no-wrap
2663 msgid "B<char *strcasestr(const char *>I<haystack>B<, const char *>I<needle>B<);>\n"
2664 msgstr ""
2665
2666 #. type: Plain text
2667 #: build/C/man3/strstr.3:54
2668 msgid ""
2669 "The B<strstr>()  function finds the first occurrence of the substring "
2670 "I<needle> in the string I<haystack>.  The terminating null bytes "
2671 "(\\(aq\\e0\\(aq) are not compared."
2672 msgstr ""
2673
2674 #. type: Plain text
2675 #: build/C/man3/strstr.3:60
2676 msgid ""
2677 "The B<strcasestr>()  function is like B<strstr>(), but ignores the case of "
2678 "both arguments."
2679 msgstr ""
2680
2681 #. type: Plain text
2682 #: build/C/man3/strstr.3:63
2683 msgid ""
2684 "These functions return a pointer to the beginning of the substring, or NULL "
2685 "if the substring is not found."
2686 msgstr ""
2687
2688 #. type: Plain text
2689 #: build/C/man3/strstr.3:70
2690 msgid ""
2691 "The B<strstr>()  function conforms to C89 and C99.  The B<strcasestr>()  "
2692 "function is a nonstandard extension."
2693 msgstr ""
2694
2695 #. type: Plain text
2696 #: build/C/man3/strstr.3:76
2697 msgid ""
2698 "Early versions of Linux libc (like 4.5.26) would not allow an empty "
2699 "I<needle> argument for B<strstr>().  Later versions (like 4.6.27) work "
2700 "correctly, and return I<haystack> when I<needle> is empty."
2701 msgstr ""
2702
2703 #. type: Plain text
2704 #: build/C/man3/strstr.3:88
2705 msgid ""
2706 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strcasecmp>(3), B<strchr>(3), "
2707 "B<string>(3), B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strtok>(3), "
2708 "B<wcsstr>(3)"
2709 msgstr ""
2710
2711 #. type: TH
2712 #: build/C/man3/strtok.3:30
2713 #, no-wrap
2714 msgid "STRTOK"
2715 msgstr ""
2716
2717 #. type: Plain text
2718 #: build/C/man3/strtok.3:33
2719 msgid "strtok, strtok_r - extract tokens from strings"
2720 msgstr ""
2721
2722 #. type: Plain text
2723 #: build/C/man3/strtok.3:38
2724 #, no-wrap
2725 msgid "B<char *strtok(char *>I<str>B<, const char *>I<delim>B<);>\n"
2726 msgstr ""
2727
2728 #. type: Plain text
2729 #: build/C/man3/strtok.3:40
2730 #, no-wrap
2731 msgid ""
2732 "B<char *strtok_r(char *>I<str>B<, const char *>I<delim>B<, char "
2733 "**>I<saveptr>B<);>\n"
2734 msgstr ""
2735
2736 #. type: Plain text
2737 #: build/C/man3/strtok.3:51
2738 msgid ""
2739 "B<strtok_r>(): _SVID_SOURCE || _BSD_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 1 "
2740 "|| _XOPEN_SOURCE || _POSIX_SOURCE"
2741 msgstr ""
2742
2743 #. type: Plain text
2744 #: build/C/man3/strtok.3:62
2745 msgid ""
2746 "The B<strtok>()  function parses a string into a sequence of tokens.  On the "
2747 "first call to B<strtok>()  the string to be parsed should be specified in "
2748 "I<str>.  In each subsequent call that should parse the same string, I<str> "
2749 "should be NULL."
2750 msgstr ""
2751
2752 #. type: Plain text
2753 #: build/C/man3/strtok.3:67
2754 msgid ""
2755 "The I<delim> argument specifies a set of bytes that delimit the tokens in "
2756 "the parsed string.  The caller may specify different strings in I<delim> in "
2757 "successive calls that parse the same string."
2758 msgstr ""
2759
2760 #. type: Plain text
2761 #: build/C/man3/strtok.3:76
2762 msgid ""
2763 "Each call to B<strtok>()  returns a pointer to a null-terminated string "
2764 "containing the next token.  This string does not include the delimiting "
2765 "byte.  If no more tokens are found, B<strtok>()  returns NULL."
2766 msgstr ""
2767
2768 #. type: Plain text
2769 #: build/C/man3/strtok.3:83
2770 msgid ""
2771 "A sequence of two or more contiguous delimiter bytes in the parsed string is "
2772 "considered to be a single delimiter.  Delimiter bytes at the start or end of "
2773 "the string are ignored.  Put another way: the tokens returned by B<strtok>()  "
2774 "are always nonempty strings."
2775 msgstr ""
2776
2777 #. type: Plain text
2778 #: build/C/man3/strtok.3:93
2779 msgid ""
2780 "The B<strtok_r>()  function is a reentrant version B<strtok>().  The "
2781 "I<saveptr> argument is a pointer to a I<char *> variable that is used "
2782 "internally by B<strtok_r>()  in order to maintain context between successive "
2783 "calls that parse the same string."
2784 msgstr ""
2785
2786 #. type: Plain text
2787 #: build/C/man3/strtok.3:102
2788 msgid ""
2789 "On the first call to B<strtok_r>(), I<str> should point to the string to be "
2790 "parsed, and the value of I<saveptr> is ignored.  In subsequent calls, I<str> "
2791 "should be NULL, and I<saveptr> should be unchanged since the previous call."
2792 msgstr ""
2793
2794 #. type: Plain text
2795 #: build/C/man3/strtok.3:106
2796 msgid ""
2797 "Different strings may be parsed concurrently using sequences of calls to "
2798 "B<strtok_r>()  that specify different I<saveptr> arguments."
2799 msgstr ""
2800
2801 #. type: Plain text
2802 #: build/C/man3/strtok.3:113
2803 msgid ""
2804 "The B<strtok>()  and B<strtok_r>()  functions return a pointer to the next "
2805 "token, or NULL if there are no more tokens."
2806 msgstr ""
2807
2808 #. type: TP
2809 #: build/C/man3/strtok.3:114
2810 #, no-wrap
2811 msgid "B<strtok>()"
2812 msgstr ""
2813
2814 #. type: Plain text
2815 #: build/C/man3/strtok.3:117
2816 msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
2817 msgstr ""
2818
2819 #. type: TP
2820 #: build/C/man3/strtok.3:117
2821 #, no-wrap
2822 msgid "B<strtok_r>()"
2823 msgstr ""
2824
2825 #. type: Plain text
2826 #: build/C/man3/strtok.3:120
2827 msgid "POSIX.1-2001."
2828 msgstr ""
2829
2830 #. type: Plain text
2831 #: build/C/man3/strtok.3:123
2832 msgid "Be cautious when using these functions.  If you do use them, note that:"
2833 msgstr ""
2834
2835 #. type: Plain text
2836 #: build/C/man3/strtok.3:125
2837 msgid "These functions modify their first argument."
2838 msgstr ""
2839
2840 #. type: Plain text
2841 #: build/C/man3/strtok.3:127
2842 msgid "These functions cannot be used on constant strings."
2843 msgstr ""
2844
2845 #. type: Plain text
2846 #: build/C/man3/strtok.3:129
2847 msgid "The identity of the delimiting byte is lost."
2848 msgstr ""
2849
2850 #. type: Plain text
2851 #: build/C/man3/strtok.3:136
2852 msgid ""
2853 "The B<strtok>()  function uses a static buffer while parsing, so it's not "
2854 "thread safe.  Use B<strtok_r>()  if this matters to you."
2855 msgstr ""
2856
2857 #. type: Plain text
2858 #: build/C/man3/strtok.3:145
2859 msgid ""
2860 "The program below uses nested loops that employ B<strtok_r>()  to break a "
2861 "string into a two-level hierarchy of tokens.  The first command-line "
2862 "argument specifies the string to be parsed.  The second argument specifies "
2863 "the delimiter byte(s)  to be used to separate that string into \"major\" "
2864 "tokens.  The third argument specifies the delimiter byte(s)  to be used to "
2865 "separate the \"major\" tokens into subtokens."
2866 msgstr ""
2867
2868 #. type: Plain text
2869 #: build/C/man3/strtok.3:147
2870 msgid "An example of the output produced by this program is the following:"
2871 msgstr ""
2872
2873 #. type: Plain text
2874 #: build/C/man3/strtok.3:159
2875 #, no-wrap
2876 msgid ""
2877 "$B< ./a.out \\(aqa/bbb///cc;xxx:yyy:\\(aq \\(aq:;\\(aq \\(aq/\\(aq>\n"
2878 "1: a/bbb///cc\n"
2879 "         --E<gt> a\n"
2880 "         --E<gt> bbb\n"
2881 "         --E<gt> cc\n"
2882 "2: xxx\n"
2883 "         --E<gt> xxx\n"
2884 "3: yyy\n"
2885 "         --E<gt> yyy\n"
2886 msgstr ""
2887
2888 #. type: SS
2889 #: build/C/man3/strtok.3:161
2890 #, no-wrap
2891 msgid "Program source"
2892 msgstr ""
2893
2894 #. type: Plain text
2895 #: build/C/man3/strtok.3:167
2896 #, no-wrap
2897 msgid ""
2898 "#include E<lt>stdio.hE<gt>\n"
2899 "#include E<lt>stdlib.hE<gt>\n"
2900 "#include E<lt>string.hE<gt>\n"
2901 msgstr ""
2902
2903 #. type: Plain text
2904 #: build/C/man3/strtok.3:174
2905 #, no-wrap
2906 msgid ""
2907 "int\n"
2908 "main(int argc, char *argv[])\n"
2909 "{\n"
2910 "    char *str1, *str2, *token, *subtoken;\n"
2911 "    char *saveptr1, *saveptr2;\n"
2912 "    int j;\n"
2913 msgstr ""
2914
2915 #. type: Plain text
2916 #: build/C/man3/strtok.3:180
2917 #, no-wrap
2918 msgid ""
2919 "    if (argc != 4) {\n"
2920 "        fprintf(stderr, \"Usage: %s string delim subdelim\\en\",\n"
2921 "                argv[0]);\n"
2922 "        exit(EXIT_FAILURE);\n"
2923 "    }\n"
2924 msgstr ""
2925
2926 #. type: Plain text
2927 #: build/C/man3/strtok.3:186
2928 #, no-wrap
2929 msgid ""
2930 "    for (j = 1, str1 = argv[1]; ; j++, str1 = NULL) {\n"
2931 "        token = strtok_r(str1, argv[2], &saveptr1);\n"
2932 "        if (token == NULL)\n"
2933 "            break;\n"
2934 "        printf(\"%d: %s\\en\", j, token);\n"
2935 msgstr ""
2936
2937 #. type: Plain text
2938 #: build/C/man3/strtok.3:194
2939 #, no-wrap
2940 msgid ""
2941 "        for (str2 = token; ; str2 = NULL) {\n"
2942 "            subtoken = strtok_r(str2, argv[3], &saveptr2);\n"
2943 "            if (subtoken == NULL)\n"
2944 "                break;\n"
2945 "            printf(\"\\t --E<gt> %s\\en\", subtoken);\n"
2946 "        }\n"
2947 "    }\n"
2948 msgstr ""
2949
2950 #. type: Plain text
2951 #: build/C/man3/strtok.3:197
2952 #, no-wrap
2953 msgid ""
2954 "    exit(EXIT_SUCCESS);\n"
2955 "}\n"
2956 msgstr ""
2957
2958 #. type: Plain text
2959 #: build/C/man3/strtok.3:203
2960 msgid ""
2961 "Another example program using B<strtok>()  can be found in "
2962 "B<getaddrinfo_a>(3)."
2963 msgstr ""
2964
2965 #. type: Plain text
2966 #: build/C/man3/strtok.3:214
2967 msgid ""
2968 "B<index>(3), B<memchr>(3), B<rindex>(3), B<strchr>(3), B<string>(3), "
2969 "B<strpbrk>(3), B<strsep>(3), B<strspn>(3), B<strstr>(3), B<wcstok>(3)"
2970 msgstr ""
2971
2972 #. type: TH
2973 #: build/C/man3/strverscmp.3:25
2974 #, no-wrap
2975 msgid "STRVERSCMP"
2976 msgstr ""
2977
2978 #. type: TH
2979 #: build/C/man3/strverscmp.3:25
2980 #, no-wrap
2981 msgid "2001-12-19"
2982 msgstr ""
2983
2984 #. type: Plain text
2985 #: build/C/man3/strverscmp.3:28
2986 msgid "strverscmp - compare two version strings"
2987 msgstr ""
2988
2989 #. type: Plain text
2990 #: build/C/man3/strverscmp.3:35
2991 #, no-wrap
2992 msgid "B<int strverscmp(const char *>I<s1>B<, const char *>I<s2>B<);>\n"
2993 msgstr ""
2994
2995 #.  classical solution: "rename jan jan0 jan?"
2996 #. type: Plain text
2997 #: build/C/man3/strverscmp.3:52
2998 msgid ""
2999 "Often one has files I<jan1>, I<jan2>, ..., I<jan9>, I<jan10>, ...  and it "
3000 "feels wrong when B<ls>(1)  orders them I<jan1>, I<jan10>, ..., I<jan2>, ..., "
3001 "I<jan9>.  In order to rectify this, GNU introduced the I<-v> option to "
3002 "B<ls>(1), which is implemented using B<versionsort>(3), which again uses "
3003 "B<strverscmp>()."
3004 msgstr ""
3005
3006 #. type: Plain text
3007 #: build/C/man3/strverscmp.3:63
3008 msgid ""
3009 "Thus, the task of B<strverscmp>()  is to compare two strings and find the "
3010 "\"right\" order, while B<strcmp>(3)  only finds the lexicographic order.  "
3011 "This function does not use the locale category B<LC_COLLATE>, so is meant "
3012 "mostly for situations where the strings are expected to be in ASCII."
3013 msgstr ""
3014
3015 #. type: Plain text
3016 #: build/C/man3/strverscmp.3:81
3017 msgid ""
3018 "What this function does is the following.  If both strings are equal, return "
3019 "0.  Otherwise find the position between two bytes with the property that "
3020 "before it both strings are equal, while directly after it there is a "
3021 "difference.  Find the largest consecutive digit strings containing (or "
3022 "starting at, or ending at) this position.  If one or both of these is empty, "
3023 "then return what B<strcmp>(3)  would have returned (numerical ordering of "
3024 "byte values).  Otherwise, compare both digit strings numerically, where "
3025 "digit strings with one or more leading zeros are interpreted as if they have "
3026 "a decimal point in front (so that in particular digit strings with more "
3027 "leading zeros come before digit strings with fewer leading zeros).  Thus, "
3028 "the ordering is I<000>, I<00>, I<01>, I<010>, I<09>, I<0>, I<1>, I<9>, "
3029 "I<10>."
3030 msgstr ""
3031
3032 #. type: Plain text
3033 #: build/C/man3/strverscmp.3:88
3034 msgid ""
3035 "The B<strverscmp>()  function returns an integer less than, equal to, or "
3036 "greater than zero if I<s1> is found, respectively, to be earlier than, equal "
3037 "to, or later than I<s2>."
3038 msgstr ""
3039
3040 #. type: Plain text
3041 #: build/C/man3/strverscmp.3:95
3042 msgid "B<rename>(1), B<strcasecmp>(3), B<strcmp>(3), B<strcoll>(3)"
3043 msgstr ""
3044
3045 #. type: TH
3046 #: build/C/man3/strxfrm.3:30
3047 #, no-wrap
3048 msgid "STRXFRM"
3049 msgstr ""
3050
3051 #. type: Plain text
3052 #: build/C/man3/strxfrm.3:33
3053 msgid "strxfrm - string transformation"
3054 msgstr ""
3055
3056 #. type: Plain text
3057 #: build/C/man3/strxfrm.3:56
3058 msgid ""
3059 "The B<strxfrm>()  function transforms the I<src> string into a form such "
3060 "that the result of B<strcmp>(3)  on two strings that have been transformed "
3061 "with B<strxfrm>()  is the same as the result of B<strcoll>(3)  on the two "
3062 "strings before their transformation.  The first I<n> bytes of the "
3063 "transformed string are placed in I<dest>.  The transformation is based on "
3064 "the program's current locale for category B<LC_COLLATE>.  (See "
3065 "B<setlocale>(3))."
3066 msgstr ""
3067
3068 #. type: Plain text
3069 #: build/C/man3/strxfrm.3:64
3070 msgid ""
3071 "The B<strxfrm>()  function returns the number of bytes required to store the "
3072 "transformed string in I<dest> excluding the terminating null byte "
3073 "(\\(aq\\e0\\(aq).  If the value returned is I<n> or more, the contents of "
3074 "I<dest> are indeterminate."
3075 msgstr ""
3076
3077 #. type: Plain text
3078 #: build/C/man3/strxfrm.3:72
3079 msgid ""
3080 "In the I<\"POSIX\"> or I<\"C\"> locales B<strxfrm>()  is equivalent to "
3081 "copying the string with B<strncpy>(3)."
3082 msgstr ""
3083
3084 #. type: Plain text
3085 #: build/C/man3/strxfrm.3:80
3086 msgid ""
3087 "B<bcmp>(3), B<memcmp>(3), B<setlocale>(3), B<strcasecmp>(3), B<strcmp>(3), "
3088 "B<strcoll>(3), B<string>(3)"
3089 msgstr ""