描述
用C语言实现字符串拷贝函数有几种方式
首先是使用库函数
比如下面代码
123void ourStrCopy(char S1[] , char S2[]){
strcpy(S1, S2); //该函数还有另一个版本可以按长度截取
}
还有一个函数是memcpy,这个是内存拷贝,原型是
123void memcpy(void *dest, const void *src, size_t n);
需要注意的是这个函数第一个和第二个指针都是void型且第二个指针不能被修改,第三个参数是需要拷贝的内存长度按字节记。
然后是用指针引用,注意这个并非赋值,而是引用,这种操作需要注意内存。
12char s1[] = “abcdefg”;//定义一组字符串
char *s2 = s1;//按照指针拷贝字符串
第三种方法就是直接赋值了
12345678910111213void outStrCopy(char s1[] , char s2[]){
int len1 = strlen(s1);//获取第一个字符串的长度
int len2 = strlen(s2);//获取第二个字符串的长度
int len = 0; //字符串总长度
if(len1 《= len2){
len = len2; //选择COPY的长度
}else{
le