Hemos discutido la clase String y algunas de sus funciones en el siguiente conjunto 1.
clase de string C++ y sus aplicaciones | Serie 1
Más funciones se discuten en este artículo
String frente a array de caracteres
En C++, además de la array de caracteres, existe una forma similar de implementar una string, que es usar la clase de string que forma parte de la biblioteca estándar de C++. Para implementar una string usando la clase de string, necesitamos agregar un archivo de encabezado. La diferencia básica entre una array de caracteres y una string es que, en el caso de una array de caracteres, el tamaño debe asignarse en el momento de la declaración, es decir, toda la memoria una vez asignada es fija y no puede modificarse en tiempo de ejecución. Mientras que, para la string, no es necesario especificar el tamaño y asignar memoria fija en el momento de la declaración.
// C++ program to demonstrate Character Array // and String #include<iostream> #include<string>// for string class using namespace std; int main() { // Size has to be predefined in character array char str[80] = "GeeksforGeeks"; // Size not predefined in string string s("GeeksforGeeks"); // Printing character array and string cout << str << endl; cout << s << endl; return 0; }
Producción:
GeeksforGeeks GeeksforGeeks
Algunas funciones de string útiles
- compare (string_to_compare) : – Se utiliza para comparar dos strings. Devuelve la diferencia de la segunda string y la primera string en un número entero.
// C++ program to demonstrate use of compare()
#include<iostream>
#include<string>
using
namespace
std;
int
main()
{
string str(
"GeeksforGeeks"
);
string str1(
"GeeksforGeeks"
);
// Comparing strings using compare()
if
( str.compare(str1) == 0 )
cout <<
"Strings are equal"
;
else
cout <<
"Strings are unequal"
;
return
0;
}
Producción :
Strings are equal
- find(“string”): busca en la string la primera aparición de la substring especificada en los argumentos. Devuelve la posición de la primera aparición de substring.
- find_first_of(“string”): busca en la string el primer carácter que coincida con cualquiera de los caracteres especificados en sus argumentos. Devuelve la posición del primer carácter que coincide.
- find_last_of(“string”): busca en la string el último carácter que coincida con cualquiera de los caracteres especificados en sus argumentos. Devuelve la posición del último carácter que coincide.
- rfind(“string”): busca en la string la última aparición de la substring especificada en los argumentos. Devuelve la posición de la última aparición de substring
// C++ program to demonstrate working of find(),
// rfind(),find_first_of() and find_last_of()
#include<iostream>
#include<string>
using
namespace
std;
int
main()
{
string str(
"The Geeks for Geeks"
);
// find() returns position to first
// occurrence of substring "Geeks"
// Prints 4
cout <<
"First occurrence of \"Geeks\" starts from : "
;
cout << str.find(
"Geeks"
) << endl;
// Prints position of first occurrence of
// any character of "reef" (Prints 2)
cout <<
"First occurrence of character from \"reef\" is at : "
;
cout << str.find_first_of(
"reef"
) << endl;
// Prints position of last occurrence of
// any character of "reef" (Prints 16)
cout <<
"Last occurrence of character from \"reef\" is at : "
;
cout << str.find_last_of(
"reef"
) << endl;
// rfind() returns position to last
// occurrence of substring "Geeks"
// Prints 14
cout <<
"Last occurrence of \"Geeks\" starts from : "
;
cout << str.rfind(
"Geeks"
) << endl;
return
0;
}
Producción:
First occurrence of "Geeks" starts from : 4 First occurrence of character from "reef" is at : 2 Last occurrence of character from "reef" is at : 16 Last occurrence of "Geeks" starts from : 14
- insert(pos_to_begin,string_to_insert): Esta función inserta la substring dada en la string. Toma dos argumentos, primero la posición desde la que desea insertar la substring y segundo la substring.
// C++ program to demonstrate working of insert()
#include<iostream>
#include<string>
using
namespace
std;
int
main()
{
string str(
"Geeksfor"
);
// Printing the original string
cout << str << endl;
// Inserting "Geeks" at 8th index position
str.insert(8,
"Geeks"
);
// Printing the modified string
// Prints "GeeksforGeeks"
cout << str << endl;
return
0;
}
Producción:
Geeksfor GeeksforGeeks
- clear(): esta función borra todos los caracteres de la string. La string se vuelve vacía (la longitud se convierte en 0) después de esta operación.
- vacío(): prueba si la string está vacía. Esta función devuelve un valor booleano.
// C++ program to demonstrate working of clear()
// and empty()
#include<iostream>
#include<string>
using
namespace
std;
int
main()
{
string str(
"GeeksforGeeks"
);
// clearing string
str.clear();
// Checking if string is empty
(str.empty()==1)?
cout <<
"String is empty"
<< endl:
cout <<
"String is not empty"
<< endl;
return
0;
}
Producción:
String is empty
Este artículo es una contribución de Manjeet Singh. Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA