[C++] Contenedor STL - operación de cadena de cadena ⑧ (algoritmo relacionado con cadena de cadena | conversión de cadena - función std::transform | volteo de cadena - función std::reverse)






1. Conversión de cadenas de caracteres: función std::transform



1. std::descripción del prototipo de función de transformación


La función C++ std::transform es un algoritmo general en el archivo de encabezado <algoritmo>, que se utiliza para convertir elementos dentro de un rango específico;

stdtransformLa función en el espacio de comando se utiliza para convertir el contenido del rango especificado del contenedor STL;

Según los parámetros proporcionados, esta función puede extraer caracteres de la cadena fuente, convertirlos según el formato especificado y luego devolver una nueva cadena;

template< class InputIt, class OutputIt, class UnaryOperation >  
OutputIt transform( InputIt first, InputIt last, OutputIt d_first, UnaryOperation unary_op );  
  
template< class InputIt1, class InputIt2, class OutputIt, class BinaryOperation >  
OutputIt transform( InputIt1 first1, InputIt1 last1, InputIt2 first2, OutputIt d_first, BinaryOperation binary_op );

Descripción de parámetros :

  • primero: el iterador inicial del rango de entrada, que indica el rango de elementos a convertir;
  • último: el iterador terminal del rango de entrada, que indica el rango de elementos a convertir;
  • d_first: el iterador inicial del rango de salida, que indica el rango en el que se deben escribir los elementos convertidos;
  • unary_op objeto de función de operación unaria: se utiliza para convertir cada elemento en el rango de entrada;
  • objeto de función de operación binaria binario_op: se utiliza para combinar y convertir elementos en el rango de entrada 1 con elementos en el rango de entrada 2;

Objeto de función de operación:

  • topper: convierte cadena a letras mayúsculas;
  • tolow: convierte la cadena a letras minúsculas;

2. Ejemplo de código: conversión de función de transformación de clase de cadena


Ejemplo de código:

#include "iostream"
using namespace std;
#include "string"
#include "algorithm"

int main() {
    
    

	string s1 = "Tom And Jerry";

	// 将字符串转为大写字母
	transform(s1.begin(), s1.end(), s1.begin(), toupper);
	// 打印 s1值
	cout << "s1 = " << s1 << endl;

	// 将字符串转为小写字母
	transform(s1.begin(), s1.end(), s1.begin(), tolower);
	// 打印 s1值
	cout << "s1 = " << s1 << endl;


	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

Resultados de:

s1 = TOM Y JERRY
s1 = tom y jerry
Pulsa cualquier tecla para continuar. . .

Insertar descripción de la imagen aquí





2. Inversión de cadena - función std::reverse



1. std::descripción del prototipo de función inversa


std::reversees una función algorítmica en el archivo de encabezado <algoritmo>, que se utiliza para invertir el orden de los elementos dentro de un rango de contenedor STL determinado;

std::reversePrototipo de función:

template< class BidirectionalIt >  
void reverse( BidirectionalIt first, BidirectionalIt last );

Descripción de parámetros:

  • primero: Un iterador bidireccional que apunta al elemento inicial del rango que se va a invertir;
  • último: Un iterador bidireccional que apunta al elemento final del rango a revertir;

2. Ejemplo de código: función std::reverse


Ejemplo de código:

#include "iostream"
using namespace std;
#include "string"
#include "algorithm"

int main() {
    
    

	string s1 = "Tom And Jerry";

	// 将字符串 翻转
	reverse(s1.begin(), s1.end());
	// 打印 s1值
	cout << "s1 = " << s1 << endl;


	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

Resultados de:

s1 = yrreJ dnA moT
Presione cualquier tecla para continuar. . .

Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/han1202012/article/details/135050238
Recomendado
Clasificación