
编程实现字符串拷贝、比较功能,要求不能使用系统库函数strcpy、strcmp 30
展开全部
strlen(char*a):求a中字符的个数,不包括最后的
\0;
sizeof是求a占的内存字节数。
a=strcmp(char*a,char*b):比较两个字符串。(a=0,a=b),(a<0,a<b),(a>0,a>b);
strcpy(char*a,char*b):把b的内容拷贝给a;
substr(strat,length):返回从strat为起始位置长度为length的一个字符串;
strrev(char*a)把字符串a的所有字符的顺序颠倒过来(不包括空字符null);
strcat(char*a,char*b)把字符串b连接到字符串a尾部。
#include<iostream.h>
#include<string.h>
void
main()
{
char
*a="test1";
char
*b="test12";
cout<<strlen(a)<<endl;//此处输出5,是由test1\0得出,\0不计算
cout<<sizeof(a)<<endl;//此处输出4,a为指针,占四个字节
char
c[20]="test123";
int
result
=strcmp(a,b);
cout<<
result<<endl;//
此处输出为-1
char
*p1=strcat(c,b);
cout
<<p1<<endl;//此处输出为test123test12,要注意c必须要有足够的空间容纳b
char
*p2=strcpy(c,a);
cout<<p2<<endl;//此处输出为test1
char
*p0=strrev(c);
cout<<p0<<endl;//此处输出为1tset
}
。
\0;
sizeof是求a占的内存字节数。
a=strcmp(char*a,char*b):比较两个字符串。(a=0,a=b),(a<0,a<b),(a>0,a>b);
strcpy(char*a,char*b):把b的内容拷贝给a;
substr(strat,length):返回从strat为起始位置长度为length的一个字符串;
strrev(char*a)把字符串a的所有字符的顺序颠倒过来(不包括空字符null);
strcat(char*a,char*b)把字符串b连接到字符串a尾部。
#include<iostream.h>
#include<string.h>
void
main()
{
char
*a="test1";
char
*b="test12";
cout<<strlen(a)<<endl;//此处输出5,是由test1\0得出,\0不计算
cout<<sizeof(a)<<endl;//此处输出4,a为指针,占四个字节
char
c[20]="test123";
int
result
=strcmp(a,b);
cout<<
result<<endl;//
此处输出为-1
char
*p1=strcat(c,b);
cout
<<p1<<endl;//此处输出为test123test12,要注意c必须要有足够的空间容纳b
char
*p2=strcpy(c,a);
cout<<p2<<endl;//此处输出为test1
char
*p0=strrev(c);
cout<<p0<<endl;//此处输出为1tset
}
。
展开全部
自定义一下函数
cpstr(char *saim,char *ssource)
把ssource里面的字符个数得到再一个一个的赋到saim里面
这样strcpy的功能不就有了
要不就在strcpy函数所在.h文件直接把它的整函数都考过来改个名字自己用。
cpstr(char *saim,char *ssource)
把ssource里面的字符个数得到再一个一个的赋到saim里面
这样strcpy的功能不就有了
要不就在strcpy函数所在.h文件直接把它的整函数都考过来改个名字自己用。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
什麽语言?VB是这样Clipboard.gettext。比较用If a=b then msgbox "相同"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
什么的?C的吗?有算法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询