Funkcija tolower C programavimo kalboje

Skaitymo trukmė: 2 minutės

C programavimo kalboje yra sukurta daug funkcijų, kurios įvairiai apdoroja ar pakeičia informaciją. Viena tokių funkcijų, kuri yra aprašyta standartinėje C kalbos bibliotekoje, yra tolower. Šią funkciją ir peržvelgsime šiame straipsnyje, kuris yra padalintas į tris dalis:

Funkcijos tolower struktūra:

Funkcijos prototipas: int tolower(int c);

Grąžinama reikšmė:
nepakitusi gauto c kintamojo reikšmė arba gautos reikšmės ir 32 suma (c + 32).

Parametrų sąrašas:
(int c) - sveikasis skaičius, kuris yra tikrinamas. Nuo šio skaičiaus priklauso galutinis rezultatas

Antraščių failas: <ctype.h>.

1. Funkcija tolower. Kas tai?

Funkcija tolower keičia didžiąją raidę mažąja raide. Raidės, kaip ir visi simboliai C programavimo kalboje, turi savo sveikojo skaičiaus ASCII reikšmę. Didžiųjų raidžių intervalas yra nuo 65 iki 90 (nuo A iki Z), o mažųjų nuo 97 iki 122 (nuo a iki z). Atidžiau pažvelgę į ASCII reikšmes galime matyti, jog skirtumas tarp 'a' ir 'A', pavyzdžiui, yra 32 vienetai. Funkcija tolower prideda 32 prie gautos didžiosios raidės reikšmės ir taip gaunama mažoji raidė ('A' + 32 == 'a').

Kas nutinka, jeigu mes tolower funkcijai perduodame ne dižiąją, o mažąją raidę; arba kitą simbolį kaip kablelį ar klaustuką? O gi nieko, ši funkcija keičia tik tas reišmes, kurios yra intervale nuo 65 iki 90, tai yra didžiųjų raidžių intervale. Žemiau pateikiame pavyzdį, kuriame galite matyti šios ctype.h bibliotekoje aprašytos C funkcijos taikymą.

1 pavyzdys: angliškos mažųjų raidžių abėcėlės atspausdinimas.

# include <stdio.h>
# include <ctype.h>
int main ()
{
    
printf ( "abc: " );
    
for ( int i = 'A' ; i <= 'Z' ; i++)
    
{
        
printf ( "%c" , tolower(i));
    
}
    
return 0;
}
					

Galimas rezultatas:

abc: abcdefghijklmnopqrstuvwxyz

2. Perrašyta tolower funkcija.

Norėdami tiksliai perrašyti tolower funciją, turime turėti omenyje šios funkcijos veikimo ypatybę. Tai yra, ši funkcija grąžina didžiosios raidės ir 32 sumą. Taigi mums užtenka patikrinti ar gauta reikšmė yra didžiųjų raidžių intervale ir tiesos atveju, pridėti 32 ir grąžinti reikšmę. Štai kaip tai atrodo C programavimo kalboje (pavyzdys 2).

2 pavyzdys: perrašyta tolower funkcija.

int nauja_tolower ( int c)
{
    
if (c >= 'A' && c <= 'Z' )
        
return (c + 32);
    
return (c);
}
					

Kodo pavyzdyje viršuje mes aprašėme nauja_tolower funkcija, kuri priima vieną parametrą ir tikrina ar šis yra didžiųjų raidžių intervale (3-ia eilutė). Jeigu tai yra tiesa, tada grąžinama gauto kintamojo ir 32 suma (4-a eilutė). Kitu atveju yra grąžinama šiai funkcijai perduota sveikojo skaičiaus (int) reikšmė.

3. Žinių patikrinimas

Funkcija tolower C programavimo kalboje

1Ko tolower funkcija niekada negrąžina?

2Kuris iš pateiktų intervalų atitinką anglišką didžiųjų raidžių abėcėlę?

3Kokia yra funkcijos tolower(68) grįžtamoji reikšmė?

Žinių patikrinimas baigtas!

Sveikiname!

Pasidalinkite savo geru rezultatu!