c语言--strcpy函数实现

strcpy函数

原型声明

char * strcpy(char dest, const char *src);

头文件

string.h

功能

把src地址开始且含有NULL结束符的字符串复制到dest开始的地址空间

返回值

返回复制后的字符串的首地址

实现1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
char *strcpy(char *dest_str, const char *src_str)
{

char *dest = dest_str;
const char *src = src_str;

if(dest_str == NULL || src_str == NULL) || dest_str == src_str){
//如果指针不存在,或者指向相等,直接退出dest
return dest_str;
}

while((*dest++ = *src++)){
/*do nothing*/
}
return dest_str;
}

实现2

1
2
3
4
5
6
7
8
9
10
char *strcpy(char *dest, const char *src)
{

int i = 0;

if(dest && src && (dest != src)){
while(dest[i]=src[i++]);
}

return dest;
}
Contents
  1. 1. strcpy函数
    1. 1.1. 原型声明
    2. 1.2. 头文件
    3. 1.3. 功能
    4. 1.4. 返回值
    5. 1.5. 实现1
    6. 1.6. 实现2
,