icon Top 9 categories map      RocketAware > man pages >


Tips: Browse or Search all pages for efficient awareness of more than 6000 of the most popular reusable and open source applications, functions, libraries, and FAQs.

The "RKT couplings" below include links to source code, updates, additional information, advice, FAQs, and overviews.


Search all pages


By activity
Professions, Sciences, Humanities, Business, ...

User Interface
Text-based, GUI, Audio, Video, Keyboards, Mouse, Images,...

Text Strings
Conversions, tests, processing, manipulation,...

Integer, Floating point, Matrix, Statistics, Boolean, ...

Algorithms, Memory, Process control, Debugging, ...

Stored Data
Data storage, Integrity, Encryption, Compression, ...

Networks, protocols, Interprocess, Remote, Client Server, ...

Hard World
Timing, Calendar and Clock, Audio, Video, Printer, Controls...

File System
Management, Filtering, File & Directory access, Viewers, ...


RocketLink!--> Man page versions: OpenBSD FreeBSD RedHat Others

[ANSI C X3.159-1989]

STRCPY(3)                 OpenBSD Programmer's Manual                STRCPY(3)

     strcpy, strncpy - copy strings

     #include <string.h>

     char *
     strcpy(char *dst, const char *src);

     char *
     strncpy(char *dst, const char *src, size_t len);

     The strcpy() and strncpy() functions copy the string src to dst (includ-
     ing the terminating `\0' character).

     strncpy() copies not more than len characters into dst, appending `\0'
     characters if src is less than len characters long, and not terminating
     dst if src is more than len characters long.

     The strcpy() and strncpy() functions return dst.

     The following sets chararray to ``abc\0\0\0'':

           (void)strncpy(chararray, "abc", 6);

     The following sets chararray to ``abcdef'' and does not null terminate
     chararray because the source string is >= the length parameter.
     strncpy() only null terminates the destination string when then length of
     the source string is less than the length parameter.

           (void)strncpy(chararray, "abcdefgh", 6);

     The following copies as many characters from input to buf as will fit and
     null terminates the result.  Because strncpy() does not guarantee to null
     terminate the string itself, we must do this by hand.

           char buf[BUFSIZ];

           (void)strncpy(buf, input, sizeof(buf) - 1);
           buf[sizeof(buf) - 1] = '\0';

     Note that strlcpy(3) is a better choice for this kind of operation.  The
     equivalent using strlcpy(3) is simply:

           (void)strlcpy(buf, input, sizeof(buf));

     bcopy(3),  memccpy(3),  memcpy(3),  memmove(3),  strlcpy(3)

     The strcpy() and strncpy() functions conform to ANSI X3.159-1989 (``ANSI

OpenBSD 2.6                      June 29, 1991                               1

Source: OpenBSD 2.6 man pages. Copyright: Portions are copyrighted by BERKELEY
SOFTWARE DESIGN, INC., The Regents of the University of California, Massachusetts
Institute of Technology, Free Software Foundation, FreeBSD Inc., and others.

(Corrections, notes, and links courtesy of RocketAware.com)

[Detailed Topics]
FreeBSD Sources for strcpy(3) functions
OpenBSD sources for strcpy(3)

[Overview Topics]

Up to: NUL Terminated String processing - NUL terminated string operations (strcpy, strlen, etc)

RocketLink!--> Man page versions: OpenBSD FreeBSD RedHat Others

[ANSI C X3.159-1989]

Rapid-Links: Search | About | Comments | Submit Path: RocketAware > man pages > strcpy.3/
RocketAware.com is a service of Mib Software
Copyright 1999, Forrest J. Cavalier III. All Rights Reserved.
We welcome submissions and comments