//用字符数组实现字符串的复制
#include"stdio.h"
#define N 100
void MyStrcpy(char dstStr[],char srcStr[]);
int main()
{
char a[N],b[N];
printf("Please input a string:\n");
gets(a); //输入字符串
MyStrcpy(b,a) ; //将字符数组a中的字符串复制到b中
printf("The copy is:\n");
puts(b); //输出复制后的字符串
return 0;
}
//函数功能:用字符数组作为函数参数,实现字符串复制。
void MyStrcpy(char dstStr[],char srcStr[])
{
int i=0; //数组下标初始化为0
while(srcStr[i]!='\0') //若取出字符不是字符串的结束标志
{
dstStr[i]=srcStr[i]; //复制字符
i++; //移动下标
}
dstStr[i]='\0'; //在字符串dstStr的末尾添加字符串结束标志
}
运行结果:
注意点:
1.字符串不能直接使用关系运算符,要么用数组,要么用函数。
2.字符串的结束标志为’\0’,并且结束标志也要占据一个符号位,若使用函数复制要谨记复制函数必须要比原函数大。
3.数组下标定义后最好立刻进行赋初值。