本文主要是介绍strncpy的实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、strncpy当src字符串中遇到'\0'时,结束复制
#include<stdio.h>
#include<malloc.h>
#include<string.h>
char * cx_strncpy(char *dst, const char *src, int size) {
char *d, *end;
memset(dst,0,size);
if(*src == '\0')
return dst;
d = dst;
end = dst + size;
for(; dst < end; src++,dst++) {
if(!(*dst = *src)) {
return d;
}
}
*dst = '\0';
return d;
}
void main() {
char *src = "test strncpy";
char * result ;
int length = sizeof("test strncpy");
char *dst = (char*) malloc(length);
result = cx_strncpy(dst,src,length);
printf("%s\n",result);
}
这篇关于strncpy的实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!