MEMORY(3-BSD) RISC/os Reference Manual MEMORY(3-BSD)
NAME
memory: memccpy, memchr, memcmp, memcpy, memset - memory
operations
SYNOPSIS
For -systype svr3 and -systype bsd43:
#include <memory.h>
char *memccpy (s1, s2, c, n)
char *s1, *s2;
int c, n;
char *memchr (s, c, n)
char *s;
int c, n;
int memcmp (s1, s2, n)
char *s1, *s2;
int n;
char *memcpy (s1, s2, n)
char *s1, *s2;
int n;
char *memset (s, c, n)
char *s;
int c, n;
DESCRIPTION
These functions operate as efficiently as possible on memory
areas (arrays of characters bounded by a count, not ter-
minated by a null character). They do not check for the
overflow of any receiving memory area.
memccpy copies characters from memory area s2 into s1, stop-
ping after the first occurrence of character c has been
copied, or after n characters have been copied, whichever
comes first. It returns a pointer to the character after
the copy of c in s1, or a NULL pointer if c was not found in
the first n characters of s2.
memchr returns a pointer to the first occurrence of charac-
ter c in the first n characters of memory area s, or a NULL
pointer if c does not occur.
memcmp compares its arguments, looking at the first n char-
acters only, and returns an integer less than, equal to, or
greater than 0, according as s1 is lexicographically less
than, equal to, or greater than s2.
Printed 11/19/92 Page 1
MEMORY(3-BSD) RISC/os Reference Manual MEMORY(3-BSD)
memcpy copies n characters from memory area s2 to s1. It
returns s1.
memset sets the first n characters in memory area s to the
value of character c. It returns s.
For user convenience, all these functions are declared in
the optional <memory.h> header file.
CAVEATS
memcmp is implemented by using the most natural character
comparison on the machine. Thus the sign of the value
returned when one of the characters has its high order bit
set is not the same in all implementations and should not be
relied upon.
Character movement is performed differently in different
implementations. Thus overlapping moves may yield
surprises.
NOTE
When these routines are used in a program which is compiled
in -systype svr3, they are not resolved by libc.a. See
intro(3) for more information.
Page 2 Printed 11/19/92