Código de C/Visual C - Conversión de Cadenas de MAYÚSCULAS a minúsculas (y Viceversa)

Requerimientos

No requiere nada cualquier compilador que soporte al menos C89 debería bastar.

1.0

Publicado el 30 de Agosto del 2021gráfica de visualizaciones de la versión: 1.0
515 visualizaciones desde el 30 de Agosto del 2021
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Versión estable.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/*Este codigo se  cede al dominio publico*/
 
/*
    Las letras mayusculas y minusculas en
    ASCII tienen una distancia en sus codigos
    de 32 caracteres cada uno, por ello el proceso
    de conversion consiste en restar o sumar 32
    al codigo del caracter en cuestion. Es posible
    lograr estas operaciones por medio del operador
    XOR ya que con este podremos invertir el valor
    del quinto bit el cual vale exactamente 32, de
    manera que se sume o reste este valor segun.
*/
 
/**
    @fn upper_case()
    @brief Convierte letras minusculas a mayusculas
    @param `obj' es la cadena a convertir
    @warning La cadena jamás puede ser NULL
    @return La cadena convertida
**/
char* upper_case(char* obj)
{
    unsigned int index = 0U;
    for( ; obj[index] != '\0'; ++index)
        if(obj[index] >= 'a' && obj[index] <= 'z')
            obj[index] ^=  '\40';
    return obj;
}
/**
    @fn lower_case()
    @brief Convierte letras mayusculas a minusculas
    @param `obj' es la cadena a convertir
    @warning La cadena jamás puede ser NULL
    @return La cadena convertida
**/
char* lower_case(char* obj)
{
    unsigned int index = 0U;
    for( ; obj[index] != '\0'; ++index)
        if(obj[index] >= 'A' && obj[index] <= 'Z')
            obj[index] ^=  '\40';
    return obj;
}
/**
    @fn swap_case()
    @brief Invierte las letras mayusculas y minusculas
    @param `obj' es la cadena a convertir
    @warning La cadena jamás puede ser NULL
    @return La cadena convertida
**/
char* swap_case(char* obj)
{
    unsigned int index = 0U;
    for( ; obj[index] != '\0'; ++index)
        if((obj[index] >= 'a' && obj[index] <= 'z')
        || (obj[index] >= 'A' && obj[index] <= 'Z'))
            obj[index] ^=  '\40';
    return obj;
}



Comentarios sobre la versión: 1.0 (0)


No hay comentarios
 

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s7146