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

📄 cb_split.cpp

📁 LINUX系统下基于ARM处理器的使用GPRS方式通过SOCKET数据包进行煤矿瓦斯监控的程序.这是在黑龙江省现场运行的程序源代码.
💻 CPP
字号:
/*
* Copyright (c) 2004,哈尔滨驰博电子公司软件部
* All rights reserved.
* 
* 文件名称:CB_Split.cpp
* 文件标识:
* 摘    要:
* 
* 当前版本:1.0.3
* 作    者:Sam
* 完成日期:2004年8月16日
*
* 取代版本:1.0.2 
* 原作者  :Sam
* 完成日期:2004年6月10日
*/


#include "CB_Split.h"
#include "Afx.h"

//##ModelId=408E11290399
CB_Split::~CB_Split()
{
  if(m_str !=NULL)
  {
     delete m_str;  
	 m_str = NULL;
  }
}

//##ModelId=408E11290321
CB_Split::CB_Split()
{
  initialize();
}


//##ModelId=408E11290349
CB_Split::CB_Split(char *str, char split)
{
  initialize();
  setStr(str);
  setSplitChar(split);
}

//##ModelId=40CFDCE3019B
void CB_Split::initialize()
{
  m_str = NULL;
  m_nextFlag = false;

}

//##ModelId=40CFDD9F0278
void CB_Split::setStr(char *str)
{
  int len = strlen(str);
  if(m_str !=NULL)
  {
    delete m_str;
    m_str = NULL;
  }
  m_str = new char[len];
  strcpy(m_str,str);
}

//##ModelId=40CFE00401E3
char *CB_Split::getStr()
{
  return m_str;
}

//##ModelId=40CFE3C602FF
void CB_Split::setSplitChar(char split)
{
  m_split = split;
}

//##ModelId=40CFE4A6001C
char *CB_Split::getNext()
{
  char *pos;
  pos = index(m_str,getSplitChar());
  if(pos == 0)
   return NULL;
  int str_len = strlen(m_str);
  int pos_len = strlen(pos);
  int index =  str_len - pos_len +1;
 
  memset(m_str_result,'\0',255);
  m_str_result[255] = '\0';
  strncpy(m_str_result,m_str,index);
  
  memmove(m_str,m_str+index,pos_len);
  m_str[pos_len]='\0';
  return m_str_result;
}

//##ModelId=40CFE6BA0143
char CB_Split::getSplitChar()
{
  return m_split;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -