strncpy和strxfrm之间的区别

时间:2015-01-28 11:23:55

标签: c

我似乎无法理解这一点,这两个功能之间的基本区别是什么:

char *strncpy(char *str1, const char *str2, size_t  count);

size_t strxfrm(char *str1, const char *str2, size_t  count);

对我来说,他们似乎都将count个字符从str2复制到str1。我真正想知道的是,我什么时候应该使用其中任何一个?

1 个答案:

答案 0 :(得分:2)

区别在于返回值

strcpy() strncpy()函数会将指针返回到目标字符串。

成功完成后, strxfrm()将返回已转换字符串的长度(不包括终止空字节)。如果返回的值是n或更多,则s1指向的数组的内容是未指定的。