C语言库函数学习【string.h】之substr_(char*dest, char* src, int start, int count)
代码如下:
#include
<
stdio.h
>
/*
函数功能:在src中截取开始位置为start,长度为count的字符串赋给dest,并返回dest。
参数描述:
src :源字符串
dest :目标字符串
start :开始位置
count :截取长度
返回值:截取的字符串指针
*/
char * substr_( char * dest, char * src, int start, int count)
{
if ( NULL == dest || NULL == src || start < 0 || count <= 0 )
return ( char * ) NULL;
int len = strlen_(src); /* 源字符串长度 */
if ( start > len - 1 ) /* 开始位置大于字符串长度 */
return ( char * ) NULL;
if ( count > len || start + count > len ) /* 截取长度大于字符串长度 */
count = len - start;
strncpy_(dest,src + start,count); /* 复制count个字节到dest */
dest[count] = ' \0 ' ;
return dest;
}
/*
函数功能:在src中截取开始位置为start,长度为count的字符串赋给dest,并返回dest。
参数描述:
src :源字符串
dest :目标字符串
start :开始位置
count :截取长度
返回值:截取的字符串指针
*/
char * substr_( char * dest, char * src, int start, int count)
{
if ( NULL == dest || NULL == src || start < 0 || count <= 0 )
return ( char * ) NULL;
int len = strlen_(src); /* 源字符串长度 */
if ( start > len - 1 ) /* 开始位置大于字符串长度 */
return ( char * ) NULL;
if ( count > len || start + count > len ) /* 截取长度大于字符串长度 */
count = len - start;
strncpy_(dest,src + start,count); /* 复制count个字节到dest */
dest[count] = ' \0 ' ;
return dest;
}