mystring.h文件内容:
//常用字符串操作
#ifndef MYSTRING_H
#define MYSTRING_H
//计算字符昨晚上度
int charLength(char* ch){
int i=0;
while(*ch++!='\0'){
++i;
}
return i;
}
//将src字符串复制到ch中
void Mystrcpy(char* ch,char*src){
int i;
for ( i=0;*(src+i)!='\0';++i)
{
*(ch+i)=*(src+i);
}
*(ch+i)='\0';
}
//新src中字符串添加到ch尾部
void MyStrcat(char *ch,char *src){
int i;
int j;
for (i=0;*(ch+i)!='\0';++i);
for (j=0;*(src+j)!='\0';++j,++i)
{
*(ch+i)=*(src+j);
}
*(ch+i)='\0';
}
//打印字符串
void printChar(char* ch){
for (int i=0;*(ch+i)!='\0';i++)
{
printf("%c",*(ch+i));
}
}
//比较字符串大小
int MyStrcmp( char *ch,char*src){
int i;
for (i=0;*(ch+i)!='\0'&&*(src+i)!='\0';++i)
{
if(*(ch+i)-*(src+i)>0){
return 1;
break;
}else if (*(ch+i)-*(src+i)<0)
{
return -1;
break;;
}
}
if (*(ch+i)=='\0' && *(src+i)!='\0')
{
return -1;
}else if (*(ch+i)!='\0' && *(src+i)=='\0')
{
return 1;
}else
{
return 0;
}
}
#endif
调用方式:
#include <stdio.h>
#include "mystring.h"
int main( void )
{
char *src="zhaochao";
//测试charLength()
int length=charLength(src);
printf("字符串长度为:%d\n",length);
//测试Mystrcpy()
char ch[10];
printf("复制前ch内容:");
printChar(ch);
Mystrcpy(ch,src);
printf("\n复制后ch内容:");
printChar(ch);
//测试MyStrcat
char ch2[20]="abc";
printf("\n复制前ch内容:");
printChar(ch2);
MyStrcat(ch2,src);
printf("\n复制后ch内容:");
printChar(ch2);
//测试MyStrcmp
char *ch3="zhaod";
char *ch4="zhaob";
char *ch5="zhaochao";
printf("\n%d",MyStrcmp(ch3,src));
printf("\n%d",MyStrcmp(ch4,src));
printf("\n%d",MyStrcmp(ch5,src));
}
运行结果:
字符串长度为:8
复制前ch内容:烫烫烫烫烫烫烫烫烫烫
复制后ch内容:zhaochao
复制前ch内容:abc
复制后ch内容:abczhaochao
1
-1
0
请按任意键继续. . .