求strlcpy strlcat函数源代码
size_t strlcpy (char *dst, const char *src, size_t size);
size_t strlcat (char *dst, const char *src, size_t size);
函数源代码,谁有贴上来研究下,谢谢
[解决办法]
size_tstrlcpy (char *dst, const char *src, size_t dst_sz){ size_t n; for (n = 0; n < dst_sz; n++) { if ((*dst++ = *src++) == '\0') break; } if (n < dst_sz) return n; if (n > 0) *(dst - 1) = '\0'; return n + strlen (src);}size_tstrlcat (char *dst, const char *src, size_t dst_sz){ size_t len = strlen(dst); if (dst_sz < len) /* the total size of dst is less than the string it contains; this could be considered bad input, but we might as well handle it */ return len + strlen(src); return len + strlcpy (dst + len, src, dst_sz - len);}