自定义字符串拷贝、连接、比较及设置长度操作

include<stdio.h>

int myStrlen(char Str)//字符长度
{
int count=0;
while(
Str!='\0')
{
count++;
Str++;
}
return count;
}

void myStrcpy(char *Str1,char Str2)//字符拷贝
{
while(
Str2!='\0')
{
Str1=Str2;
Str1++;
Str2++;
}
*Str1='\0';
}
void myStrcat(char Str1,const char Str2)//字符串连接
{
while(
Str1!='\0')
{
Str1++;
}
while(
Str2!='\0')
{
Str1=Str2;
Str1++;
Str2++;
}
*Str1='\0';
}

int myStrcmp(char str1,char str2)//字符串比较
{
while(
str1!='\0'&&
str2!='\0')
{
if(str1-str2==0){
str1++;
str2++;
}else{
return str1-str2;
}
}

if(str1=='\0')
{
return 0-
str2;
}

if(*str2=='\0')
{
return *str1-0;
}
}

void myStrncpy(char *str1,char str2,int size)
{
int i=0;
while(
str2!='\0'&&i<size)
{
str1=str2;
i++;
str1++;
str2++;
}
*str1='\0';
}

void myStrncat(char *str1,char str2,int size)
{
int i=0;
while(
str1!='\0')
{
str1++;
}

while(*str2!='\0'&&i<size)
{
    *str1=*str2;
    i++;
    str1++;
    str2++;
}
*str1='\0';

}

int myStrncmp(char str1,char str2,int size)//字符串比较
{
int count=0;
while(
str1!='\0'&&
str2!='\0'&& count<size)
{
if(str1-str2==0&&count<size-1){
str1++;
str2++;
count++;
}else if(str1-str2==0&&count==size-1){
return 0;
}else if(str1!=str2&&count<size)
{
return str1-str2;
}
}

if(str1=='\0'&&count<size)
{
return 0-
str2;
}

if(*str2=='\0'&&count<size)
{
return *str1-0;
}
}

int main()
{
/*
char str1[10]="sdfghjr";
int length1=myStrlen(str1);
printf("%d\n",length1);

char str1[10]="sdfghjr";
char str2[30];
myStrcpy(str2,str1);
printf("%s\n",str2);

char str1[30]="qwert";
char str2[10]="zxcvb";
myStrcat(str1,str2);
printf("%s\n",str1);

char str1[10]="abc";
char str2[10]="abcabc";
int result=myStrcmp(str1,str2);
printf("%d\n",result);

char str2[20]="hello world";
char str1[30];
myStrncpy(str1,str2,5);
printf("%s\n",str1);

char str1[40]="world";
char str2[20]="nihao world";
myStrncat(str1,str2,6);
printf("%s\n",str1);
*/
char str1[20]="abcabcd";
char str2[20]="abcabcanc";
int result1=myStrncmp(str1,str2,8);
printf("%d\n",result1);

return 0;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容