strncpy#
Synopsis#
#include <string.h>
char *stpncpy(char *restrict s1, const char *restrict s2, size_t n);
char *strncpy(char *restrict s1, const char *restrict s2, size_t n);
Status#
Partially implemented
Conformance#
IEEE Std 1003.1-2017
Description#
stpncpy()
and strncpy()
functions shall copy not more than n bytes (bytes that follow a NULL
character are not
copied) from the array pointed to by s2 to the array pointed to by s1.
If the array pointed to by s2 is a string that is shorter than n bytes, NULL
characters shall be appended to the
copy in the array pointed to by s1, until n bytes in all are written.
If copying takes place between objects that overlap, the behavior is undefined.
Return value#
If a NULL
character is written to the destination, the stpncpy()
function shall return the address of the first such
NULL
character. Otherwise, it shall return &s1[n]
.
The strncpy()
function shall return s1.
No return values are reserved to indicate an error.
Errors#
No errors are defined.
Tests#
Untested
Known bugs#
None