c语言字符串复制两种方法,字符串复制的几种方法

本文详细介绍了C语言中字符串处理的方法,包括如何正确地复制字符串,提供了多种实现方式,并解释了为何简单赋值会导致非法操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字符串:只有以'\0'结尾的字符集合才能称为字符串。

char arr[10]={'a','b','c','d'};是字符串

char brr[ ]={'a','b','c','d'};不是字符串

char crr[10];不是字符串

字符数组特有的

char drr[10]={"abcd"};是

char err[10]="abcd";是

char *frr="abcd";字符指针,不是数组

C语言中用str2=str1属于非法操作

1、数组复制

void Mystrcpy1(char *des,char *src)

{//把des和src当作数组看待

int i;

for(i=0;src[i]!='\0';i++)

{

des[i] = src[i];

}

des[i] = '\0';

}

2、指针法

void Mystrcpy2(char *des,char *src)

{

int i;

for(i=0;*(src+i)!='\0';i++)

{

*(des+i) = *(src+i);

}

*(des+i) = '\0';

}

3、

void Mystrcpy3(char *des,char *src)

{

/*①

while(*src != '\0')

{

*des = *src;

des++;

src++;

}

*/

//②

while(*src != '\0')

{

*des++ = *src++;

}

*des = '\0';

}

4、指针复制

void Mystrcpy4(char *des,char *src)

{

while(*des++ = *src++) ;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值