1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
/* * strncat.c */ #include <string.h> #include <klibc/compiler.h> char *strncat(char *dst, const char *src, size_t n) { char *q = strchr(dst, '\0'); const char *p = src; char ch; while (n--) { *q++ = ch = *p++; if (!ch) return dst; } *q = '\0'; return dst; }