C语言库函数学习【string.h】之strchr_(char*str, char c)
代码如下:
#include
<
stdio.h
>
/*
函数功能:函数返回一个指向str 中c的首次出现,没有找到返回NULL
参数描述:
src:源字符串
c :目标字符
返回值:指向首次在src中首次出现位置的指针
*/
char * strchr_( char * str, char c)
{
if (NULL == str )
return ( char * ) NULL;
while ( * str && * str != c) /* 遍历字符串 */
str ++ ;
if ( * str == c) /* 匹配成功 */
returnstr;
return ( char * )NULL;
}
/*
函数功能:函数返回一个指向str 中c的首次出现位置,没有找到返回-1
参数描述:
src:源字符串
c :目标字符
返回值:int
*/
int strchri_( const char * str, char c)
{
if (NULL == str || NULL == c )
return - 1 ;
inti = 0 ;
while ( * str)
{
if ( * str == c)
{
returni;
}
i ++ ;
str ++ ;
}
return - 1 ;
}
/*
函数功能:函数返回一个指向str 中c的最后一次出现位置,没有找到返回-1
参数描述:
src:源字符串
c :目标字符
返回值:int
*/
int strchrl_( char * str, char c)
{
if (NULL == str || NULL == c)
return - 1 ;
inti = 0 ;
char * p = str;
/* 移动到最后 */
while ( * p)
{
i ++ ;
p ++ ;
}
/* 前移到非'\0'字符 */
p -- ;
i -- ;
/* 遍历 */
while ( * p)
{
if ( * p == c) /* 匹配成功 */
returni;
i -- ;
p -- ;
}
return - 1 ;
}
/*
函数功能:函数返回一个指向str 中c的首次出现,没有找到返回NULL
参数描述:
src:源字符串
c :目标字符
返回值:指向首次在src中首次出现位置的指针
*/
char * strchr_( char * str, char c)
{
if (NULL == str )
return ( char * ) NULL;
while ( * str && * str != c) /* 遍历字符串 */
str ++ ;
if ( * str == c) /* 匹配成功 */
returnstr;
return ( char * )NULL;
}
/*
函数功能:函数返回一个指向str 中c的首次出现位置,没有找到返回-1
参数描述:
src:源字符串
c :目标字符
返回值:int
*/
int strchri_( const char * str, char c)
{
if (NULL == str || NULL == c )
return - 1 ;
inti = 0 ;
while ( * str)
{
if ( * str == c)
{
returni;
}
i ++ ;
str ++ ;
}
return - 1 ;
}
/*
函数功能:函数返回一个指向str 中c的最后一次出现位置,没有找到返回-1
参数描述:
src:源字符串
c :目标字符
返回值:int
*/
int strchrl_( char * str, char c)
{
if (NULL == str || NULL == c)
return - 1 ;
inti = 0 ;
char * p = str;
/* 移动到最后 */
while ( * p)
{
i ++ ;
p ++ ;
}
/* 前移到非'\0'字符 */
p -- ;
i -- ;
/* 遍历 */
while ( * p)
{
if ( * p == c) /* 匹配成功 */
returni;
i -- ;
p -- ;
}
return - 1 ;
}