logo

Concatenació de cadenes en C++

La cadena és un tipus d'estructura de dades que s'utilitza per emmagatzemar caràcters. La concatenació de cadenes en C++ és un dels temes més discutits relacionats amb les cadenes. Hi ha diversos mètodes per concatenar cadenes mitjançant mètodes definits per l'usuari, i un parell de mètodes per concatenar cadenes amb mètodes predefinits. Comprovem tots aquests mètodes.

StringConcatenation-(1)-(1)



Mètodes de concatenació de cadenes

Hi ha 6 mètodes per concatenar Corda com s'esmenta a continuació:

osi model de referència en xarxa
  1. Utilitzant la funció append().
  2. Utilitzant l'operador '+'.
  3. Utilitzant la funció strcat().
  4. Utilitzant C++ for Loop.
  5. Ús de l'herència.
  6. Utilitzant la funció Friend i la funció strcat().

1. Utilitzant la funció append().

La funció append() és una funció membre de la std::classe de cadena . Amb aquesta funció, podem concatenar dos objectes std::string (cadenes d'estil C++) tal com es mostra a l'exemple següent.

Sintaxi:



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

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant la funció 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;> }>

>

>

Sortida

this is init added now>

2. Utilitzant l'operador ‘+’

Aquest és el mètode més fàcil per a la concatenació de dues cadenes. El + operador afegeix cadenes i retorna una cadena concatenada. Aquest mètode només funciona per a cadenes d'estil C++ (objectes std::string) i no funciona amb cadenes d'estil C (matriu de caràcters).

Sintaxi:

string new_string = init + add;>

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant l'operador '+':

C++




cobertura de declaracions
// 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;> }>

>

>

Sortida

this is init added now>

3. Utilitzant la funció strcat().

La funció C++ strcat() és una funció integrada definida a fitxer de capçalera. Aquesta funció concatena les dues cadenes calor i afegir i el resultat s'emmagatzema al calor corda. Aquesta funció només funciona per a cadenes d'estil C (matrius de caràcters) i no funciona per a cadenes d'estil C++ (objectes std::string).

Sintaxi:

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

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant la funció strcat():

C++


afegir cadena java



// 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;> }>

>

>

Sortida

this is init added now>

4. Utilitzant for Loop

L'ús d'un bucle és un dels mètodes més bàsics de concatenació de cadenes. Aquí, anem afegint elements un per un mentre recorrem tota la cadena i després una altra. El resultat final serà la corda concatenada formada per ambdues cordes.

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant el bucle for:

C++


xarxa i internet



// 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;> }>

>

>

Sortida

this is init added now>

5. Utilitzar l'herència

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant l'herència:

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;> }>

>

string compara java

>

Sortida

this is init added now>

6. Utilitzant la funció Friend i la funció strcat().

A continuació es mostra el programa C++ per a la concatenació de cadenes mitjançant la funció friend i la funció 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;> }>

>

>

Sortida

this is init added now>