⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mystring.cpp

📁 联通接收发送新程序
💻 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 + -