+.SH 注意
+Some systems (the BSDs, Solaris, and others) provide the following function:
+
+ size_t strlcat(char *dest, const char *src, size_t size);
+
+.\" https://lwn.net/Articles/506530/
+This function appends the null\-terminated string \fIsrc\fP to the string
+\fIdest\fP, copying at most \fIsize\-strlen(dest)\-1\fP from \fIsrc\fP, and adds a null
+terminator to the result, \fIunless\fP \fIsize\fP is less than \fIstrlen(dest)\fP.
+This function fixes the buffer overrun problem of \fBstrcat\fP(), but the
+caller must still handle the possibility of data loss if \fIsize\fP is too
+small. The function returns the length of the string \fBstrlcat\fP() tried to
+create; if the return value is greater than or equal to \fIsize\fP, data loss
+occurred. If data loss matters, the caller \fImust\fP either check the
+arguments before the call, or test the function return value. \fBstrlcat\fP()
+is not present in glibc and is not standardized by POSIX, but is available
+on Linux via the \fIlibbsd\fP library.