前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >c语言字符串之拷贝函数

c语言字符串之拷贝函数

作者头像
大忽悠爱学习
发布2021-03-02 15:42:52
1.1K0
发布2021-03-02 15:42:52
举报
文章被收录于专栏:c++与qt学习

1.strcpy函数

在这里插入图片描述
在这里插入图片描述

2.strncpy函数

在这里插入图片描述
在这里插入图片描述

**代码演示: ** strcpy函数:

代码语言:javascript
复制
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//关于字符串的操作要包含头文件sting.h
#include<string.h>
int main()
{
	//1.
	//strcpy字符串拷贝函数
	char str1[] = "大忽悠";
	char str2[] = "你好,世界";
	strcpy(str2, str1); //'\0'也会被拷贝过去
	//strcpy(str1,str2); 会报错
	//因为要将str2拷贝到str1,str2的内存大于str1的内存,所以会造成缓冲区溢出的错误
	//输出字符串 要用格式符%s
	printf("%s\n", str1);
	//2.
	char buf[32] = { 0 }; //用0初始化
	strcpy(buf, "活着"); //'\0'也会被拷贝过去
	printf("%s\n", buf);
	//3.
	char buf1[32];
	//遇到\0结束拷贝,所有字符串处理函数都有这个特性
	strcpy(buf1, "abc\0defg");
	printf("%s\n", buf1);
	return 0;
}
在这里插入图片描述
在这里插入图片描述

strncpy函数:

代码语言:javascript
复制
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//关于字符串的操作要包含头文件sting.h
#include<string.h>
int main()
{
	//1.
	//字符数组初始化不定义长度不追加0或\0那么就会出现乱码
	char c1[32] = {0};
	strncpy(c1, "abcdefg", 3);
	printf("%s\n", c1);
     //2.
	char c2[32] = { 0 };
	strncpy(c2, "abc\0defg", 5); //遇到\0结束拷贝
	printf("%s\n", c2);
	return 0;
}
在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/02/11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档