新的一年到来,第一周总是没什么状态,就随便写写简单的一些算法,今天就来实现一个字符串分割。
需求为:根据指定分割符,分割字符串,并将分割好的各个子串存入vector向量中。
举例:假如存在字符串char str[] = "123,456,789,abc,def",那么按逗号','作为分割符,最终vector向量中的内容便为:vector<string> result = {"123", "456", "789", "abc", "def"}
代码实现起来比较简单,就不做什么分析了,下边直接贴代码:
#include <stdio.h>
#include <vector>
#include <string>
#include <iostream>
#include <string.h>
#include <assert.h>
using namespace std;
//字符串分割函数
/*
* src:待分割的字符串
* splite:分割符
* result: 存放分割结果
*/
void SpliteStr(const char* src, char splite, vector<string>& result)
{
assert(src);
string str;
char szBuf[256] = {0};
char szTmp[128] = {0};
char *pc = NULL;
bool isFound = false;
strncpy(szBuf, src,