📄 mystring.cpp
字号:
/**************************************************************************/
/* Copyright(C) 2001 by Nanjing XINWANG TEC CO.,LTD. */
/**************************************************************************/
/* Name: mystring.cpp Version: 1.0.0 */
/* Created by: Zhangbo Date: 2001-12-04 */
/* Content: implementation of self-defined string functions */
/* Comment: */
/* Modified: */
/**************************************************************************/
#include <ctype.h>
#include <string.h>
#include <stdio.h>
#include "mystring.hpp"
#define MAX_PARAMETER_LEN 140 //length of one parameter
#define MAX_PARAMETERS_ACCOUNT 5 //count of parameters
char* TrimLeft(char* str)
{
char* pcStr = str;
while (isspace(*pcStr))
pcStr++;
return pcStr;
}
char* TrimRight(char* str)
{
char* pcStr = strchr(str,'\0');
while (pcStr > str && isspace(pcStr[-1]))
pcStr--;
*pcStr = '\0';
return str;
}
char* TrimLeftRight(char* str)
{
char* pcBegin;
char* pcEnd;
pcBegin = str;
while (isspace(*pcBegin))
pcBegin++;
pcEnd = strchr(pcBegin, '\0');
while (pcBegin < pcEnd && isspace(pcEnd[-1]))
pcEnd--;
*pcEnd = '\0';
return pcBegin;
}
char* TrimAll(char* str)
{
char* pcBegin;
char* pcEnd;
char* pcStr;
pcStr=str;
while (isspace(*pcStr))
pcStr++;
pcBegin=pcStr;
pcEnd=pcStr;
while (*pcStr != '\0') {
if (isspace(*pcStr)) {
++pcStr;
} else {
*(pcEnd++) = *(pcStr++);
}
}
*pcEnd = '\0';
return pcBegin;
}
//add by Heyl
void ParseParameter(char* sPara,char *sPara1,char *sPara2,
char *sPara3,char *sPara4,char *sPara5)
{
//get real parameters
char* a[5] ;
a[ 0 ] = sPara1 ;
a[ 1 ] = sPara2 ;
a[ 2 ] = sPara3 ;
a[ 3 ] = sPara4 ;
a[ 4 ] = sPara5 ;
for ( int i = 0;i<5;i++) //初始化为零
memset( a[i],0,sizeof(a[i]) );
i = 0;
char* sToken = strtok(sPara, " ");
while ((NULL !=sToken) && (i < MAX_PARAMETERS_ACCOUNT))
{
strncpy( a[i], sToken, MAX_PARAMETER_LEN);
a[i][MAX_PARAMETER_LEN] = 0;
i++;
sToken = strtok(NULL, " ");
}
}
/*-----------------------------------------------------------*/
//add by hyl on 20030807
//特服号暂时性+0,由1885改成01885
char* ReplaceString( char* str,const char* searchstr,const
char* replacestr )
{
char *q = str ;
// char searchstr[] = "1885" ;
// char replacestr[] = "01885" ;
char destStr[ 256 ] ;
char stmp[ 256 ] ;
memset( destStr,0,sizeof(destStr) ) ;
char *p = strstr( q,searchstr ) ;
int result ;
while ( p != NULL )
{
result = p - q;
strncpy( stmp,q,result ) ;
stmp[ result ] = 0 ;
strcat( destStr,stmp ) ;
strcat( destStr,replacestr ) ;
q = p + strlen( searchstr ) ;
p = strstr( q,searchstr ) ;
}
strcat( destStr,q ) ;
strcpy( str,destStr ) ;
return str ;
}
char* TrimLeftZero( char* str )
{
char* pcStr = str ;
if ( pcStr[0] == '0' )
return ++pcStr ;
else
return pcStr ;
}
char* AddLeftZero( char* str )
{
char pcStr[ 256 ];
if ( str[0] != '0' )
{
sprintf( pcStr,"0%s",str ) ;
strcpy( str,pcStr ) ;
}
return str ;
}
/*-----------------------------------------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -