函数原型:int myStrcp(char *pDes,char *pSrc); // pDes 指向目标串,pSrc指向源串,函数返回拷贝字符的长度
程序运行结果示例:
源串是:
No cross, no crown.
目标串是:
No cross, no crown.
函数原型:int myStrcp(char *pDes,char *pSrc); // pDes 指向目标串,pSrc指向源串,函数返回拷贝字符的长度
程序运行结果示例:
源串是:
No cross, no crown.
目标串是:
No cross, no crown.
一个实现,供参考:
#include <stdio.h>
int myStrcp(char * pDes,char *pSrc){
int i=0;
//如果原字符串为空指针,则返回0,说明没有字符进行了复制
if(pSrc==NULL){
return 0;
}
//访问源字符串,直到整个字符串访问到结尾空字符'\0'
while(pSrc[i]!='\0'){
pDes[i]=pSrc[i]; //把源字符串的每个字符逐一复制到目标字符串位置
i++; //访问源字符串下一个字符
}
pDes[i]='\0'; //给目标字符串加字符串结束的空字符'\0'
return i; //返回复制的字符个数
}
int main(void){
char str[20]="No cross, no crown.";
char dStr[20];
myStrcp(dStr,str);
puts("原串为:");
puts(str);
puts("目的串为:");
puts(dStr);
return 0;
}