Files
gbdk-2020/gbdk-lib/libc/strncpy.c
2022-02-20 00:56:40 +03:00

19 lines
361 B
C

#include <string.h>
/*
* Copy s2 to s1, truncating or null-padding to always copy n bytes.
* Return s1.
*/
char *strncpy(char *s1, const char *s2, int n) {
int i;
char *os1 = s1;
for (i = 0; i < n; i++) {
if ((*s1++ = *s2++) == '\0') {
while (++i < n) *s1++ = '\0';
return os1;
}
}
return os1;
}