Convertir cadena a mayúscula y minúscula en C

Introducción

Hoy veremos cómo convertir un string o una cadena a mayúscula. También veremos cómo convertir un string a minúscula.

Es decir, pasar algo como “Hola Mundo” a “hola mundo”. O algo como “Buena noche” a “BUENA NOCHE”.

Para ello usaremos algunas funciones que la librería estándar tiene: tolower y toupper.

Librería ctype.h

Para usar toupper y tolower en C vamos a necesitar incluir la librería que se encarga de ello. Simplemente la incluimos con #include:

#include <ctype.h>

Con esto ya podremos usar toupper y tolower en C para convertir cadenas.

Convertir cadena a mayúscula

No hay forma directa de convertir una cadena a mayúscula; pero sí hay forma de convertir un carácter a mayúscula. Recordemos que las cadenas sólo son arreglos de caracteres; así que podemos recorrerlas e ir convirtiendo a mayúscula cada uno de sus elementos.

Entonces veamos este programa que define una cadena y luego la convierte a mayúscula para imprimirla más tarde:

#include <stdio.h>
#include <ctype.h>
 
int main(int argc, char const *argv[])
{
	char cadena[] = "Hola mundo, esto va a ser convertido a mayuscula. parzibyte.me";
	printf("Cadena original: %s\n", cadena);
 
	// Convertir cada char a mayúscula
	// usando toupper
	for (int indice = 0; cadena[indice] != '\0'; ++indice){
		cadena[indice] = toupper(cadena[indice]);
	}
	printf("Cadena despues de ser convertida: %s\n", cadena);
	return 0;
}

Primero definimos una cadena. La imprimimos para mostrarla en su estado original. Luego hacemos un ciclo for en donde vamos aumentando al índice desde 0 hasta que el lleguemos al carácter de terminación \0

Por cada elemento en el array vamos convirtiendo la letra en mayúscula usando la función toupper que viene cuando incluimos ctype.h

La ejecución del programa es la siguiente:

Convertir cadena a mayúscula en C
Convertir cadena a mayúscula en C

Convertir cadena a minúscula en C

Esto es casi lo mismo que arriba, sólo que ahora usamos tolower. El mismo código de arriba pero para convertir una cadena a minúscula queda así:

#include <stdio.h>
#include <ctype.h>
 
int main(int argc, char const *argv[])
{
	char cadena[] = "Hola Mundo, esto va a ser convertido a MINUSCULA. Parzibyte.Me";
	printf("Cadena original: %s\n", cadena);
 
	// Convertir cada char a minúscula
	// usando tolower
	for (int indice = 0; cadena[indice] != '\0'; ++indice){
		cadena[indice] = tolower(cadena[indice]);
	}
	printf("Cadena despues de ser convertida: %s\n", cadena);
	return 0;
}

Lo que hacemos es recorrer la cadena y convertir cada carácter en su representación minúscula. La ejecución es como se ve a continuación:

Convertir cadena a minúscula en C
Convertir cadena a minúscula en C

Conclusión

Así es como podemos convertir un string a mayúscula o a minúscula usando el lenguaje C. También escribí un post para intercalar las letras de una cadena, puedes verlo aquí.

Si quieres ver el vídeo en YouTube también puedes verlo:

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

3 comentarios en “Convertir cadena a mayúscula y minúscula en C”

  1. Pingback: Convertir cadena a mayúscula y minúscula en C++ - Parzibyte's blog

  2. Pingback: Convertir a mayúsculas y minúsculas en JavaScript - Parzibyte's blog

  3. Pingback: Contar vocales de una cadena en C - Parzibyte's blog

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *