函数
GLibstrlcpy
声明 [src]
gsize
g_strlcpy (
gchar* dest,
const gchar* src,
gsize dest_size
)
描述 [src]
可移植的包装器,在有相应函数的系统中调用 strlcpy(),否则模拟 strlcpy()。将 src 复制到 dest;保证 dest 以空结尾;src 必须以空结尾;dest_size 是缓冲区的大小,而非要复制的字节数。
至多复制 dest_size - 1 个字符。总是以空结尾(除非 dest_size 为 0)。此函数不会分配内存。与 strncpy() 不同,此函数不会填充 dest(所以通常较快)。它返回尝试结果的大小,strlen (src),因此若 retval >= dest_size,则发生了截断。
忠告:strlcpy() 据称比 strcpy() 或 strncpy() 更安全,但如果你真的想要避免失误,g_strdup() 是更好的选择。