编写程序,将字符串str1复制到字符串str2中,不能用strcpy函数,并显示出来

如题所述

#include<iostream>

using namespace std;

int main(){

char str1[]="I love China!",str2[20];

void Strcpy(char *p1,char *p2);

Strcpy(str2,str1);

cout<<"str1: "<<str1<<endl;

cout<<"str2: "<<str2<<endl;

return 0;

}

void Strcpy(char *p2,char *p1){

int i=0;

for(;*p1!='\0';p1++,p2++){

*p2=*p1;

}

*p2='\0';

}

复制字符串str1到字符串str2的函数:

void Strcpy(char *p1,char *p2);

扩展资料:

定义两个字符串变量,然后直接进行赋值:

#include<iostream>

#include<string>

using namespace std;

int main(){

string str1="I love China!",str2;

str2=str1;

cout<<"str1: "<<str1<<endl;

cout<<"str2: "<<str2<<endl;

return 0;

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-27
#include <stdio.h>
void strcpy(char str1[],char str2[])
{//自定义字符串拷贝函数
int i=0;
while(str2[i]!='\0')str1[i]=str2[i++];
str1[i]='\0';
}
void main()
{
char str1[10],str2[10];
gets(str1);//输入字符串1
gets(str2);//输入字符串2
strcpy(str2,str1);//将字符串1拷贝到字符串2
puts(str2);//输出结果
}追问

帅哥,不能用strcpy函数啊

追答

我这个用的是自己定义的,不是调用string.h里面的,只不过名字一样而已。。。。。

本回答被提问者采纳

编写程序,将字符串str1复制到字符串str2中,不能用strcpy函数,并显示...
} 复制字符串str1到字符串str2的函数:void Strcpy(char *p1,char *p2);

写一个函数将字符串str1复制到字符数组str2中,要求不能使用字符串复制函...
include<string.h> void copy(char *str1,char str2[]);void main(){ char *str1="hello",str2[6];copy(str1,str2);printf("%s\\n",str2);} void copy(char *str1, char str2[]){ int i=0;while(*str1!=0)str2[i++]=*str1++;str2[i]=0;} ...

C语言中,用指针实现字符串的拷贝,不能用strcpy,用自定义函数实现该功能...
\/*,使用指针一定要先用查找函数判断是否为空,防止不小心将空地址传递*\/ while(*dest++=*src++){ ;} return p;\/*返回的ret为字符串则用char,且为地址*\/ } int main(){ char arr1[]="Hello world!";char arr2[20];char*ret=my_strcpy(arr2,arr1);printf("%s",ret);\/*打印出的...

C语言中如何编写一个字符串复制函数,并在主函数中调用它。
可以利用字符指针结合while循环的方式来编写字符串复制函数。具体实现方法可以参考如下程序:include<stdio.h>void str_copy(char *str1, char *str2) \/\/ 字符串复制函数{ while(*str1++ = *str2++); \/\/ 将字符串str2中的每个字符逐个复制到str1中,直到遇到字符串结束字符'\\0'}void ma...

C语言:编一程序,将两个字符串连接起来。 要求:不允许使用strcat函数
include<stdio.h>#include<stdlib.h>\/*程序入口点函数*\/int main(){ int i,j; char str1[100],str2[100],str3[201]; gets(str1); gets(str2); for(i=0;str1[i]!='\\0';i++) str3[i]=str1[i]; for(j=0;str2[j]!='\\0';j++) str3[j+i]...

用C语言:将一个字符串1复制到另一个字符串2的后面。并输出字符串2。
include<stdio.h> char *strcat(char *str1,char *str2){ char *p=str2;while(*p!='\\0')p++;while(*p++=*str1++);return str2;} int main(){ char a[30],b[50];printf("enter string 1 :");scanf("%s", a);printf("enter string 2 :");scanf("%s", b);printf("a+b...

如何将两个字符串连接起来,不要用strcat函数!!
include <STRING.H> include <STDLIB.H> int main(){ char str1[] = "123456";char str2[] = "abcdefg";char *pstr = NULL;pstr = (char*)malloc(strlen(str1) + (strlen(str2)) + 1);strcpy(pstr, str1);strcpy((pstr + strlen(str1)), str2);printf("%s",pstr);return 0...

...中的全部字符复制到字符数组str1中。不使用strcpy。
c;scanf("%c", &c);\/\/这句是为了防止控制台退出return 0;} 解决方法 1、定义一个带两个参数的复制函数;2、在函数内循环读取待复制字符串的一个字符,并放入到复制到字符串里;3、判断当前放入的字符是否是\\0如果是就结束循环;4、 将待复制字符串指针加1,将复制到的字符串指针加1 ...

strcpy函数用法简单例子
strcpy函数是C语言中的一个字符串复制函数,可以将一个字符串复制到另一个字符串中。下面是一个简单的例子:include。include。int main(){。char str1[20]=“Hello”;。char str2[20];。strcpy(str2,str1);\/\/将str1复制到str2中。printf(“str1:%s\\n”,str1);。printf(“str2...

C语言编写一个程序,判别两字符串str1和str2的大小。要求不使用库函数st...
char *s1, char *s2){if (s1 == NULL || s2 == NULL)\/\/ 字符串为空 return 0;while(*s1 == *s2 && *s1 != '\\0'){s1++;s2++;}return *s1 - *s2;}\/\/ 给了一个测试例子~可以自己写几个例子测试一下。int main(){printf("%d\\n", Mystrcmp("ab", "aa"));} ...

相似回答