Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- - Declaración y lectura.
- string nombre; // declaracion
- cin>>s;
- getline(cin, s); // si necesitas leer una linea completa incluyendo espacios.
- Hay un problema con getline cuando se usa luego de usar cin
- Ej:
- cin>>n;
- getline(cin, s);
- Si la entrada fuera
- 3
- abc def g
- n = 3, s = "3"
- Esto se arregla poniendo cin.ignore(); luego del cin
- cin>>n;
- cin.ignore();
- getline(cin, s);
- Si la entrada fuera
- 3
- abc def g
- n = 3, s = "abc def g"
- - Concatenación
- string s1 = "Hello_", s2 = "World", s3;
- s3 = s1 + s2;
- cout<<s3; // imprime "Hello_World";
- s3 += '!'; // tambien puede ser "!" o "!!!" (comillas simples para char, dobles para string)
- cout<<s3; // imprime "Hello_World!"
- - Comparación
- if (s == "abcd") { ... }
- el operador < y > ve el orden lexicografico.
- Ej:
- "abcd" < "abce"
- "azzzzzzzz" < "baa"
- "12345" < "12445"
- "199999" < "9"
- - Tamaño y acceso a elementos individuales
- string s = "abcba";
- cout<<s.length(); o cout<<s.size(); // imprime el tamaño del string, en este caso, 5
- cout<<s[posicion]; // imprime el caracter del string en la posicion que le digas, como un string es como un vector de chars, esto nos devuelve un char
- for (int i = 0; i < s.length(); i++) { cout<<s[i]; }
- - Substings
- original.substr(posicionDeInicio, tamaño);
- string s = "abcdefgh";
- cout<<s.substr(0, 3); // imprime abc
- cout<<s.substr(2, 2); // imprime cd
- - Ordenar o darle la vuelta a un string (librería algorithm)
- sort(s.begin(), s.end()); // "cbdca" -> "abccd"
- reverse(s.begin(), s.end());
- - Extra
- Para convertir un char de mayúscula a minúscula o viceversa se usa toupper(..) y tolower(..)
- ej:
- char c = 'a';
- c = toupper(c);
- cout << c; //A
- string s = "QWEr";
- s[0] = tolower(s[0]);
- cout << s; //qWEr
- Para relacionar una letra con su posición en el alfabeto, o una posición con la letra que le corresponde podemos usar su código ASCII http://www.asciitable.com/
- ej:
- char letra = 'c';
- cout << letra - 'a'; //2
- int pos = 12; // a = 0, b = 1...
- char letra = 'a' + pos;
- cout << letra; //m
- s.clear(); // elimina todos los valores del string, vacia el string
Add Comment
Please, Sign In to add comment