Función de división personalizada en C / C ++ para dividir cadenas y devolver datos de tipo vector

Contenido principal

¿Por qué necesitamos personalizar la función de división para dividir la cadena?

La intención original de este artículo tiene los siguientes dos puntos:

  1. La función Split en C / C ++ es strtok (). Su prototipo de función es el siguiente:
    char * strtok (char * str, const char * delimiters);
    Esto devuelve un tipo de puntero char. Si desea devolver directamente el tipo de vector, tiene Debe leer este artículo.
  2. Desea proporcionar un método particularmente simple de segmentación de cadenas, la complejidad temporal de este método es O (n), no se utilizan otras funciones.

¿La función de división personalizada devuelve datos de tipo vector?

Sin más preámbulos, vaya directamente al código:

#include<iostream>
#include<vector>
#include<string>
using namespace std;

int main() {
	string line;
	cin >> line;
	vector<string> strArr;
	string temp = "";
	int i = 0;
	while (line[i] != '\0') {
		if (line[i] - ',' == 0) {
			strArr.push_back(temp);
			temp = "";
		}
		else
			temp = temp + line[i];
		i++;
	}
	if(temp.length() > 0)
		strArr.push_back(temp);
	for (i = 0; i < strArr.size(); i++)		
		cout << strArr[i] << endl;
	system("pause");
	return 0;
}
4 artículos originales publicados · Me gusta0 · Visitas 132

Supongo que te gusta

Origin blog.csdn.net/zhangkkit/article/details/105545614
Recomendado
Clasificación