若拷贝的字符数小于等于源字符串的长度,则两者效果相同,即strncpy不会在拷贝的结果后面加上/0结束符;若拷贝的字符数大于源字符串的长度,则strncpy遇到源字符串的/0结束符时拷贝结束,此时strncpy拷贝的结果后面有/0结束符,即源字符串的结束符,memcpy则严格按照第三个参数指定的字节数进行内存拷贝。
strncat则会在添加的字符串之后加上/0结束符。
若拷贝的字符数小于等于源字符串的长度,则两者效果相同,即strncpy不会在拷贝的结果后面加上/0结束符;若拷贝的字符数大于源字符串的长度,则strncpy遇到源字符串的/0结束符时拷贝结束,此时strncpy拷贝的结果后面有/0结束符,即源字符串的结束符,memcpy则严格按照第三个参数指定的字节数进行内存拷贝。
strncat则会在添加的字符串之后加上/0结束符。