Concatenación de cadenas en C++

Concatenación de cadenas en C++

La cadena es un tipo de estructura de datos que se utiliza para almacenar caracteres. La concatenación de cadenas en C++ es uno de los temas más discutidos relacionados con las cadenas. Existen varios métodos para concatenar cadenas utilizando métodos definidos por el usuario y un par de métodos para la concatenación de cadenas utilizando métodos predefinidos. Revisemos todos estos métodos.

Concatenación de cadenas-(1)-(1)

Métodos de concatenar cadenas

Hay 6 métodos para concatenar Cadena Como se menciona abajo:



  1. Usando la función agregar ( ).
  2. Usando el operador '+'.
  3. Usando la función strcat().
  4. Usando C++ para bucle.
  5. Utilizando la herencia.
  6. Usando la función amigo y la función strcat().

1. Usando la función append()

La función append() es una función miembro de la std::clase de cadena . Usando esta función, podemos concatenar dos objetos std::string (cadenas de estilo C++) como se muestra en el siguiente ejemplo.

Sintaxis:

string& string::append (const string& str);  Here,   str:   String to be appended. 

A continuación se muestra el programa C++ para la concatenación de cadenas usando la función append():

C++




// C++ Program for string> // concatenation using append> #include> using> namespace> std;> // Driver code> int> main()> {> > string init(> 'this is init'> );> > string add(> ' added now'> );> > // Appending the string.> > init.append(add);> > cout < < init < < endl;> > return> 0;> }>

Producción

this is init added now 

2. Usando el operador '+'

Este es el método más sencillo para la concatenación de dos cadenas. El + operador agrega cadenas y devuelve una cadena concatenada. Este método solo funciona para cadenas de estilo C++ (objetos std::string) y no funciona en cadenas de estilo C (matriz de caracteres).

Sintaxis:

string new_string = init + add; 

A continuación se muestra el programa C++ para la concatenación de cadenas usando el operador '+':

C++




// C++ Program for string> // concatenation using '+' operator> #include> using> namespace> std;> // Driver code> int> main()> {> > string init(> 'this is init'> );> > string add(> ' added now'> );> > // Appending the string.> > init = init + add;> > cout < < init < < endl;> > return> 0;> }>

Producción

this is init added now 

3. Usando la función strcat()

La función strcat() de C++ es una función incorporada definida en archivo de cabecera. Esta función concatena las dos cadenas. calor y agregar y el resultado se almacena en el calor cadena. Esta función solo funciona para cadenas de estilo C (matrices de caracteres) y no funciona para cadenas de estilo C++ (objetos std::string).

Sintaxis:

char * strcat(char * init, const char * add); 

A continuación se muestra el programa C++ para la concatenación de cadenas usando la función strcat():

C++




// C++ Program for string> // concatenation using strcat> #include> #include> using> namespace> std;> // Driver code> int> main()> {> > char> init[] => 'this is init'> ;> > char> add[] => ' added now'> ;> > // Concatenating the string.> > strcat> (init, add);> > cout < < init < < endl;> > return> 0;> }>

Producción

this is init added now 

4. Usando bucle for

Usar un bucle es uno de los métodos más básicos de concatenación de cadenas. Aquí, agregamos elementos uno por uno mientras atravesamos toda la cadena y luego otra cadena. El resultado final será la cadena concatenada formada por ambas cadenas.

A continuación se muestra el programa C++ para la concatenación de cadenas usando el bucle for:

C++




// C++ Program for string> // concatenation using for loop> #include> using> namespace> std;> // Driver code> int> main()> {> > string init(> 'this is init'> );> > string add(> ' added now'> );> > string output;> > // Adding element inside output> > // from init> > for> (> int> i = 0; init[i] !=> ' '> ; i++)> > {> > output += init[i];> > }> > // Adding element inside output> > // fromt add> > for> (> int> i = 0; add[i] !=> ' '> ; i++)> > {> > output += add[i];> > }> > cout < < output < < endl;> > return> 0;> }>

Producción

this is init added now 

5. Usando la herencia

A continuación se muestra el programa C++ para la concatenación de cadenas mediante herencia:

C++




// C++ program for string concatenation> // using inheritance> #include> #include> using> namespace> std;> > // Base class> class> base> {> > protected> :> > virtual> string concatenate(string &str1,> > string &str2) = 0;> };> > // Derive class> class> derive:> protected> base {> > public> :> > string concatenate (string &str1,> > string &str2)> > {> > string temp;> > temp = str1 + str2;> > return> temp;> > }> };> > // Driver code> int> main()> {> > string init(> 'this is init'> );> > string add(> ' added now'> );> > > // Create string object> > derive obj;> > > // Print string> > cout < < obj.concatenate (init, add);> > > return> 0;> }>

Producción

this is init added now 

6. Uso de la función amigo y la función strcat()

A continuación se muestra el programa C++ para la concatenación de cadenas usando la función amigo y la función strcat():

C++




// C++ program for string concatenation> // using friend function and strcat()> #include> #include> using> namespace> std;> // Base class> class> Base {> > public> :> > char> init[100] => 'this is init'> ;> > char> add[100] => ' added now'> ;> > > friend> void> myfun(Base b);> };> > void> myfun (Base b)> {> > // Pass parameter to concatenate> > strcat> (b.init, b.add);> > > cout < < b.init;> }> // Driver code> int> main()> {> > > // Create object of base class> > Base b;> > > // pass b object to myfun() to print> > // the concatenated string> > myfun(b);> > > return> 0;> }>

Producción

this is init added now 


Artículos Más Populares

Categoría

Artículos De Interés