Prototyp isalpha()
Oto prototyp funkcji w języku programowania C:
int isalpha (int znak_wejście);Zrozumienie isalpha()
Funkcja isalpha() jest funkcją biblioteczną dostarczaną przez „ctype.h.”Ta funkcja sprawdza, czy znak jest literą alfabetu. Jeśli funkcja wykryje, że znak wejściowy jest znakiem alfabetu (od „A” do „Z” lub „a” do „z”), zwraca niezerową wartość całkowitą. Ale jeśli znak wejściowy nie jest znakiem alfabetu, funkcja zwraca zero.
Jeśli przyjrzysz się bliżej wspomnianemu wyżej prototypowi funkcji, funkcja przyjmuje jeden argument typu integer. Jednak gdy wywołujemy funkcję isaplha(), przekazujemy znak (od „A” do „Z” lub „a” do „z”). Wartość znaku jest konwertowana na wartość całkowitą in. W języku C znak jest przechowywany w pamięci jako odpowiadająca mu wartość ASCII. Każdy alfabet ma odpowiadającą mu wartość ASCII. Na przykład wartość ASCII dla „A” to 65, „b” to 98 itd.
Uwaga: ASCII to skrót od American Standard Code for Information Interchange. Kompletną tabelę ASCII można znaleźć pod następującym adresem:
https://www.cs.cmu.edu/~pattis/15-1XX/wspólne/ulotki/ascii.html
Przykłady
Teraz, gdy znasz już funkcję isalpha() i jej składnię, spójrzmy na kilka przykładów:
- Przykład 1: Wielkie litery alfabetu
- Przykład 2: Małe litery alfabetu
- Przykład 3: Cyfry
- Przykład 4: Znaki specjalne
- Przykład 5: Praktyczne użycie
Przykład 1: Wielkie litery alfabetu
W tym przykładzie zobaczysz, jak funkcja isalpha() wykrywa wielkie litery.
#zawierać#zawierać
int main()
char char_input_1 = 'A';
char char_input_2 = 'B';
char char_input_3 = 'M';
char char_input_4 = 'T';
char char_input_5 = 'Z';
/* Sprawdź, czy char_input_1 jest alfabetem */
if(isalpha(char_input_1))
printf("% c jest alfabetem.\n",char_input_1);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_1);
/* Sprawdź czy char_input_2 jest alfabetem */
if(isalpha(char_input_2))
printf("% c jest alfabetem.\n",char_input_2);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_2);
/* Sprawdź czy char_input_3 jest alfabetem */
if(isalpha(char_input_3))
printf("% c jest alfabetem.\n",char_input_3);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_3);
/* Sprawdź czy char_input_4 jest alfabetem */
if(isalpha(char_input_4))
printf("% c jest alfabetem.\n",char_input_4);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_4);
/* Sprawdź czy char_input_5 jest alfabetem */
if(isalpha(char_input_5))
printf("% c jest alfabetem.\n",char_input_5);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_5);
zwróć 0;
Przykład 2: Małe litery alfabetu
W tym przykładzie zobaczysz, jak funkcja isalpha() wykrywa małe litery i zwraca niezerową wartość całkowitą.
#zawierać#zawierać
int main()
char char_input_1 = 'a';
char char_input_2 = 'b';
char char_input_3 = 'm';
char char_input_4 = 'y';
char char_input_5 = 'z';
/* Sprawdź, czy char_input_1 jest alfabetem */
if(isalpha(char_input_1))
printf("% c jest alfabetem.\n",char_input_1);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_1);
/* Sprawdź czy char_input_2 jest alfabetem */
if(isalpha(char_input_2))
printf("% c jest alfabetem.\n",char_input_2);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_2);
/* Sprawdź czy char_input_3 jest alfabetem */
if(isalpha(char_input_3))
printf("% c jest alfabetem.\n",char_input_3);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_3);
/* Sprawdź czy char_input_4 jest alfabetem */
if(isalpha(char_input_4))
printf("% c jest alfabetem.\n",char_input_4);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_4);
/* Sprawdź czy char_input_5 jest alfabetem */
if(isalpha(char_input_5))
printf("% c jest alfabetem.\n",char_input_5);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_5);
zwróć 0;
Przykład 3: Cyfry
W tym przykładzie zobaczysz, że funkcja isalpha() zwraca zero, gdy przekazujemy cyfry.
#zawierać#zawierać
int main()
char char_input_1 = '0';
char char_input_2 = '1';
char char_input_3 = '2';
char char_input_4 = '3';
char char_input_5 = '4';
/* Sprawdź, czy char_input_1 jest alfabetem */
if(isalpha(char_input_1))
printf("% c jest alfabetem.\n",char_input_1);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_1);
/* Sprawdź czy char_input_2 jest alfabetem */
if(isalpha(char_input_2))
printf("% c jest alfabetem.\n",char_input_2);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_2);
/* Sprawdź czy char_input_3 jest alfabetem */
if(isalpha(char_input_3))
printf("% c jest alfabetem.\n",char_input_3);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_3);
/* Sprawdź czy char_input_4 jest alfabetem */
if(isalpha(char_input_4))
printf("% c jest alfabetem.\n",char_input_4);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_4);
/* Sprawdź czy char_input_5 jest alfabetem */
if(isalpha(char_input_5))
printf("% c jest alfabetem.\n",char_input_5);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_5);
zwróć 0;
Przykład 4: Znaki specjalne
W tym przykładzie zobaczysz, że funkcja isalpha() zwraca zero, gdy przekazujemy znaki specjalne.
#zawierać#zawierać
int main()
char char_input_1 = '&';
char char_input_2 = '$';
char char_input_3 = '#';
char char_input_4 = '%';
char char_input_5 = '@';
/* Sprawdź, czy char_input_1 jest alfabetem */
if(isalpha(char_input_1))
printf("% c jest alfabetem.\n",char_input_1);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_1);
/* Sprawdź, czy char_input_2 jest alfabetem */
if(isalpha(char_input_2))
printf("% c jest alfabetem.\n",char_input_2);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_2);
/* Sprawdź czy char_input_3 jest alfabetem */
if(isalpha(char_input_3))
printf("% c jest alfabetem.\n",char_input_3);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_3);
/* Sprawdź czy char_input_4 jest alfabetem */
if(isalpha(char_input_4))
printf("% c jest alfabetem.\n",char_input_4);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_4);
/* Sprawdź czy char_input_5 jest alfabetem */
if(isalpha(char_input_5))
printf("% c jest alfabetem.\n",char_input_5);
jeszcze
printf("% c nie jest alfabetem.\n",char_input_5);
zwróć 0;
Przykład 5: Praktyczne użycie
W tym przykładzie przyjrzymy się praktycznemu wykorzystaniu funkcji isalpha() w rzeczywistych sytuacjach. Załóżmy, że otrzymujemy wejściowy strumień znaków i musimy wydobyć z niego znaczące alfabety. Możemy użyć funkcji islpha(), aby wyodrębnić alfabety ze strumienia wejściowego.
#zawierać#zawierać
int main()
char char_input[] = "5673&^%_SOF2*!";
char char_output[10];
int i = 0, j = 0;
while(char_input[i] != '\0')
if(isalpha(char_input[i]))
char_output[j] = char_input[i];
j++;
i++;
char_output[j] = '\0';
printf("char_output = %s\n",char_output);
zwróć 0;
Wniosek
W wielu przykładach praktycznego wykorzystania funkcji isalpha() w tym artykule pokazano, w jaki sposób funkcja isalpha() odgrywa kluczową rolę w wykrywaniu znaków alfabetu w języku programowania C. Ta funkcja jest używana głównie w programowaniu osadzonym, gdzie otrzymujemy strumień znaków i musimy wyodrębnić znaczące alfabety ze strumienia wejściowego.