温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

c语言中strcpy函数的用法

发布时间:2020-07-03 16:14:50 来源:亿速云 阅读:483 作者:元一 栏目:编程语言

这期内容当中小编将会给大家带来有关c语言中strcpy函数的用法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

strcpy,即string copy(字符串复制)的缩写。

strcpy是一种C语言的标准库函数,strcpy把从src地址开始且含有'\0'结束符的字符串复制到以dest开始的地址空间,返回值的类型为char*。

通俗解释

定义一个字符串char a[20],和一个字符串c[]=“i am a teacher!”;

把c复制到a中就可以这样用:strcpy(a,c);

这个函数包含在头文件 <string.h>中.

C语言标准库的写法

//C语言标准库函数strcpy的一种典型的工业级的最简实现。
 
//返回值:目标串的地址。
 
//对于出现异常的情况ANSI-C99标准并未定义,故由实现者决定返回值,通常为NULL。
 
//参数:des为目标字符串,source为原字符串。
 
char* strcpy(char* des,const char* source)
 
{
 
 char* r=des;
   
  assert((des != NULL) && (source != NULL));
 
 while((*r++ = *source++)!='\0');
 
 return des;
 
}
 
//while((*des++=*source++));的解释:赋值表达式返回左操作数,所以在赋值'\0'后,循环停止。

用法

这是C语言里面复制字符串的库函数, 函数声明包括在专门处理字符串的头文件<string.h>中:

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

这个函数把字符串src复制到一分配好的字符串空间dst中,复制的时候包括标志字符串结尾的空字符一起复制。操作成功,返回dst,否则返回NULL.

示例程序

#include<string.h>
#include <stdio.h>
void main()
{
	char a[20], c[] = "I am a teacher!";
	strcpy(a, c);
	printf(" c=%s\n", c);
	printf(" a=%s\n", a);
}

注意:

C 语言和 C++语言风格轻松、灵活,语法限制宽松,因而受到各类程序员的欢迎,是比较通用的编程语言,
同时也是各大院校计算机专业的基本语言课程。strcpy 函数由于不对数组边界进行检查,而非常容易造成各种
缓冲区溢出的漏洞。这些漏洞很容易被利用,而造成严重的系统问题。在使用 strcpy 函数时,要小心谨慎。

上述就是小编为大家分享的c语言中strcpy函数的用法了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI