c语言字符串拷贝
① 自定义c语言字符串拷贝函数strcpy
/*
原 串 : Windows Application
目标团陵串 : Windows Application
请按任意键继续. . .
*/
#include <stdio.h>
#include <孙简stdlib.h>
char *str(char ds[], char ss[]) {
int i = 0;
while(ds[i] = ss[i]) ++i;
return ds;
}
int main() {
char s[] = "Windows Application";
char d[20];
printf("原 串 : %s\n",s);
printf("目标塌凯戚串 : %s\n",str(d,s));
system("pause");
return 0;
}
② C语言问题:将字符串a复制到字符串b中
将字符串a复制到字符串b中,简单的方法是使用strcpy函数;
头文件:#include
定义函数:char
*strcpy(char
*dest,
const
char
*src);
函数说明:strcpy()会将参数src
字符串拷贝至参数dest
所指的地址。
返回值:返回参数dest
的字符串起始地址。
附加说明:如果参数
dest
所指的内存空间不够大,可能会造成缓冲溢出(buffer
Overflow)的错误情况,在编写程序时请特别留意,或者用strncpy()来取代。
范例
#include
#include
void
main()
{
char
a[30]
=
"first
string(1)";
char
b[]
=
"another
string(2)";
printf("before
strcpy()
:%s\n",
a);
printf("after
strcpy()
:%s\n",
strcpy(a,
b));
}
也可以使用循环来复制:
#include
void
main()
{
int
i;
char
a[30]
=
"first
string(1)";
char
b[]
=
"another
string(2)";
printf("before
:
%s\n",
a);
for(i=0;b[i];i++)a[i]=b[i];
//复制除'\0'以外的每一个字符
a[i]='\0';
//置串尾标记'\0'
printf("after
:
%s\n",
a);
}
③ 怎样用字符指针实现两个字符串的拷贝,求c语言程序
int *p *q
将设将q中的复制到p中
while(*q!='