Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought



memory(3C)                AT&T SYSTEM V                memory(3C)



NAME
     memccpy, memchr, memcmp, memcpy, memmove, memset - memory
     operations

SYNOPSIS
     #include <memory.h> (AT&T)
     or
     #include <string.h> (POSIX)

     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 *memmove (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



Page 1                        CX/UX Programmer's Reference Manual





memory(3C)                AT&T SYSTEM V                memory(3C)



     greater than 0, according as s1 is lexicographically less
     than, equal to, or greater than s2.

     Memcpy copies n characters from memory area s2 to s1.  It
     returns s1.  If copying takes place between memory areas
     that overlap, the behavior is undefined.

     Memmove copies n characters from memory area s2 to s1.  It
     returns s1.  Memmove behaves as if the characters from
     memory area s2 were first copied to a temporary area before
     being copied to s1.  So memmove may be used safely with
     overlapping memory areas.

     Memset sets the first n characters in memory area s to the
     value of character c.  It returns s.

NOTE
     For user convenience, all these functions are declared in
     the optional <memory.h> and <string.h> header files.  Users
     may include either header file. <string.h> is the header
     file specified by the POSIX standard and <memory.h> is the
     traditional AT&T header file.

BUGS
     Memcmp uses native character comparison, which is unsigned
     on other machines.  Thus the sign of the value returned when
     one of the characters has its high-order bit set is
     implementation-dependent.

     Character movement is performed differently in different
     implementations.  Thus overlapping moves may yield
     surprises.























Page 2                        CX/UX Programmer's Reference Manual



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026