一、strlen
返回字符串的实际长度?
int strlen_(char c[])
{
int sum=0;
for(int i=0;c[i]!='\0';i++)
{
if(c[i]!=" ")
sum++;
}
return sum;
}
二、strcmp
实现比较俩个字符串的大小
int strcmp_(char c[],char c1[]) //字符串用字符数组储存
{
int l=0,sum=0;
for(l=0;c[l]!='\0',c1[l]!='\0';l++) // \0 一个字符串的结束
{
sum+=c[l]-c1[l];
}
if(sum>0)
return 1;
else if(sum<0)
return -1;
return 0;
}
三、strcpy
复制字符串? ?c1为目标字符串
char strcpy_(char c[],char c1[])
{
for(int i=0;c[i]!='\0';i++)
c1[i]=c[i];
return *c1;
}
四、strcat
将两个字符串拼接 返回的是拼接的字符串 拼在第一个字符串上
char strcat_(char c[],char c1[])
{
int j=strlen(c);
for(int i=0;c1[i]!='\0';i++)
{
c[j++]=c1[i];
}
return *c;
}
五、strchr
寻找单个字符在字符串位置 返回指针 即它后面剩余的字符串
char *strchr_(char c[],char c1)
{
for(int i=0;c[i]!='\0';i++)
{
if(c[i]==c1)
return &c[i];
}
return 0;
}
六、strstr
判断一字符串是否为另外一字符串的子串 返回第一次出现指针
char *strstr_(char c[],char c1[])
{
int k=0,sum=0;
for(int i=0;i<strlen(c);i++)
{
if(c[i]==c1[k])
{
k++;
sum++;
}
else
{
k=0;
sum=0;
}
if(sum==strlen(c1))
return &c[i-sum+1];
}
return 0;
}
?
七、strncmp
与strcmp大致相同? 指定n的字符长度
int strncmp_(char c[],char c1[],int n) //字符串用字符数组储存
{
int sum=0;
for(int i=0;i<n;i++) // \0 一个字符串的结束
{
sum+=c[i]-c1[i];
}
if(sum>0)
return 1;
else if(sum<0)
return -1;
return 0;
}
|