Ejercicios Básicos Resueltos de Punteros en C++. Convertir una cadena a mayúsculas

Función C++ que pase una cadena de caracteres a mayúsculas.

La función recibe un puntero a carácter con la dirección de inicio de una cadena de caracteres que se lee por teclado y la modifica pasando todos sus caracteres a mayúsculas.

Para pasar a mayúsculas se utiliza la función toupper(carácter).

El prototipo de la función es:

void pasa_a_mayusculas(char *s);

#include <iostream>
using namespace std;
void pasa_a_mayusculas(char *);
int main (void)
{
    char cadena[80];
    cout << "Escriba una cadena de caracteres  ";
    cin.getline(cadena,80);
    pasa_a_mayusculas(cadena);
    cout << "Cadena en mayusculas: " << cadena << endl;
    system("pause");
}
//función para pasar a mayúsculas una cadena de caracteres
void pasa_a_mayusculas(char *s)
{
     while(*s)
     {
        *s=toupper(*s);
        s++;
     }
}


De forma similar podríamos hacer una función para pasar a minúsculas la cadena.
En este caso se utiliza la función tolower(carácter);

#include <iostream>
using namespace std;
void pasa_a_minusculas(char *);
int main ()
{
    char cadena[80];
    cout << "Escriba una cadena de caracteres  ";
    cin.getline(cadena,80);
    pasa_a_minusculas(cadena);
    cout << "Cadena en minusculas: " << cadena << endl;
    system("pause");
}

//función para pasar a minúsculas una cadena de caracteres 
void pasa_a_minusculas(char *s)
{
     while(*s)
     {
        *s=tolower(*s);
        s++;
     }
}


3 comentarios:

  1. excelente, ahora... se pueden solo vocales o solo las consonantes a mayúsculas?

    ResponderEliminar
  2. No debería pasar el parámetro por referencia en vez de valor?

    ResponderEliminar