strcpy函数的理解:
strcpy,计算机语言函数,是C语言的函数之一,来自C语言标准库,定义于string.h,他可以复制以null为退出字符的储存区块到另一个储存区块儿内。由于字符串在C语言中不是首要的字符形态,而是以实现的方式来替代,在存储器内以连续的字节区块组成,strcpy可以有效复制两个配置在储存器以指针回传的字符串(字符指针或是字符串指针)。其功能是把从src地址开始且含有NULL结束符的字符串赋值到以dest开始的地址空间,对于出现异常的情况ANSI-C99(C语言的国际标准)标准未定义,故由实现者决定返回值,通常为NULL。
中文名:strcpy函数
英文名:strcpy
头文件:string.h
功能:把从src地址开始且含有NULL结束符的字符串赋值到以dest开始的地址空间。
说明:src和dest所指的空间不能重叠且dest必须有足够的空间来容纳src的字符串。
strcpy函数原型
char* my_strcpy(char* dest, const char *src)
{
char *ret = dest;
assert((dest != NULL)&&(src != NULL));
while(*dest++ = *src++)//先将*src赋给*dest,再分别++
{
;
}
return ret;
}
函数分析:
1.char*返回类型,为了实现链式访问返回char*类型,是为了实现链式访问
例:
在此我们可以直接打印出返目标字符串的长度,也就是实现了链式访问。
2. const修饰符
const为常量修饰符,意即其所修饰的对象为常量,不能被修改。
例:
const int *p = &num(表示指针所指向的对象不能通过指针改变)
int* const p = &num(p的值不能变了,指针变量不能被修改)
const 的好处是引入了常量的概念,让我们不要去修改不该修改的内存。直接的作用就是让更多的逻辑错误在编译期被发现。从而提升程序的健壮性,即程序能自己处理一些简单的程序,所以我们要尽可能的多使用const。
3.关于assert(断言)
断言的作用就是判断是否符合条件,如果符合条件,程序继续运行。使用断言可以创建更稳定且品质更好的程序。