 |
Index for Section 3 |
|
 |
Alphabetical listing for M |
|
 |
Bottom of page |
|
memccpy(3)
NAME
memccpy, memchr, memcmp, memcpy, memmove, memset - Perform memory
operations
SYNOPSIS
#include <string.h>
void *memccpy(
void *s1,
const void *s2,
int c,
size_t n );
void *memchr(
const void *s,
int c,
size_t n );
int memcmp(
const void *s1,
const void *s2,
size_t n );
int *memcpy(
void *s1,
const void *s2,
size_t n );
int *memmove(
void *s1,
const void *s2,
size_t n );
int *memset(
void *s,
int c,
size_t n );
LIBRARY
Standard C Library (libc)
STANDARDS
Interfaces documented on this reference page conform to industry standards
as follows:
memchr(), memcmp(), memcpy(), memmove(), memset(): ISO C, XPG4, XPG4-UNIX
memccpy(): XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
PARAMETERS
s Points to the location of a string.
s1 Points to the location of a destination string.
s2 Points to the location of a source string.
c Specifies a character for which to search (except for memset(), in
which c is the target of the copy).
n Specifies the number of characters to search.
DESCRIPTION
The memccpy(), memchr(), memcmp(), memcpy(), memmove(), and memset()
functions operate on strings in memory areas. A memory area is a group of
contiguous characters bound by a count and not terminated by a null
character. These memory functions do not check for overflow of the
receiving memory area. All of the functions are declared in the string.h
header file.
The memccpy() function sequentially copies bytes from the location pointed
to by the s2 parameter into the location pointed to by the s1 parameter
until one of the following occurs:
· The character specified by the c parameter, which is converted to an
unsigned char, is copied.
· The number of characters specified by the n parameter has been copied
to the string at location s1.
The memccpy() function returns a pointer to the character that follows
character c in the string pointed to by s1. If character c is not
encountered after n characters have been copied to the string at location
s1, this function returns a null pointer.
The memchr() function returns a pointer to the first occurrence of
character (byte) c in the string pointed to by s. If character c is not
encountered after n bytes have been copied to the string at location s,
this function returns a null pointer.
The memcmp() function compares the first n characters (bytes), which are
converted to unsigned char, of the string pointed to by the s1 parameter
with the first n characters (also interpreted as unsigned char) of the
string pointed to by the s2 parameter.
The memcmp() function returns 0 (zero) or a nonzero value to indicate the
results of the comparison operation. The sign of a nonzero value is
determined by the sign of the difference between the values of the first
pair of bytes that differ in the strings being compared. Possible return
values and their meanings follow:
Less than 0
When s1 is less than s2
Equal to 0
When s1 is equal to s2
Greater than 0
When s1 is greater than s2
The memcpy() function copies n bytes from the string pointed to by the s2
parameter into the location pointed to by the s1 parameter. When copying
overlapping strings, the behavior of this function is unreliable.
The memmove() function copies n bytes from the string at the location
pointed to by the s2 parameter to the string at the location pointed to by
the s1 parameter. Copying takes place as though the n number of bytes from
string s2 were first copied into a temporary location having n bytes that
do not overlap either of the strings pointed to by s1 and s2. Then, n
number of bytes from the temporary location is copied to the string pointed
to by s1. Consequently, this operation is nondestructive and proceeds from
left to right.
The memset() function copies the value of the byte specified by the c
parameter, which is converted to an unsigned char, into each of the first n
locations of the string pointed to by the s parameter.
RETURN VALUES
The memccpy() function returns a pointer to the byte following the
character (byte) specified by the c parameter in the string pointed to by
the s1 parameter. If character c is not found after the number of bytes
specified by the n parameter are scanned, the function returns a null
pointer.
The memchr() function returns a pointer to the character (byte) specified
by the c parameter. If character c does not occur after n bytes in the
string pointed to by the s parameter are scanned, the function returns a
null pointer.
The memcmp() function returns a value greater than, equal to, or less than
0 (zero), according to whether the string pointed to by the s1 parameter
has a value greater than, equal to, or less than the string pointed to by
the s2 parameter.
The memcpy() and memmove() functions return the string pointed to by the s1
parameter. No return value is reserved to indicate an error.
The memset() function returns the string pointed to by the s parameter.
SEE ALSO
Functions: bcopy(3), string(3), swab(3), wmemcpy(3)
Standards: standards(5)
 |
Index for Section 3 |
|
 |
Alphabetical listing for M |
|
 |
Top of page |
|