Funkcja isdigit w języku C

Funkcja isdigit w języku C

Język C zapewnia szereg funkcji w swoich bibliotekach, które pozwalają ustalić, czy typ danych zmiennej jest określonego typu. W tym języku istnieją również funkcje, które określają właściwości i klasyfikują dane w tym samym typ. Na przykład biblioteka CTYPE zawiera zestaw funkcji, które pozwalają ustalić, czy znak wprowadzany do argumentu wejściowego jest numeryczna czy alfanumeryczna, cyfra, grafika, kontrola, górna itd.

W tym artykule z podpowiedzi Linx pokażemy, jak korzystać z funkcji isdigit () tej biblioteki za pomocą Linux GCC. Używamy funkcji w praktycznych przykładach, które przygotowaliśmy dla Ciebie. W ten sposób używamy fragmentów kodu i obrazów do zastosowania użycia isdigit () w różnych przypadkach.

Pokazamy również pełny teoretyczny opis tej funkcji, jej składni, argumentów wejściowych i wyjściowych oraz typ danych każdego z nich.

Składnia funkcji isdigit w c

int isdigit (char c)

Opis funkcji ISDIGIT w C

Funkcja isdigit () w C określa, czy znak wejściowy „C” odpowiada wartościom dziesiętnym od 0 do 9 w kodzie ASCII. Tego rodzaju funkcje są również doskonałym zasobem do pobierania informacji z fragmentów ciągów lub plików tekstowych i przetwarzania tych danych.

Tego rodzaju funkcje są często używane do uzupełnienia funkcji, takich jak getchar () lub getch (), które odczytują znak ze strumienia i zwracają liczbę całkowitą. Zwracają również znak i kod błędu. Getchar () może zwrócić EOF (który jest zdefiniowany jako stała zdefiniowana przez ujemną implementację) za pomocą wartości zwracanej w celu wskazania, że ​​strumień wejściowy zakończył.

Dla następującego wyrażenia isdigit () zwraca wynik „a” równego „0”, jeśli „b” nie zawiera charakteru typu „cyfr”. Jeśli „B” zawiera charakter typu „cyfr”, ta funkcja zwraca wynik, który nie jest równy zero.

a = isdigit (b);


Funkcja isdigit () należy do „Ctype.H ”nagłówek i musi zostać zadeklarowany przed użyciem tej funkcji, jak pokazano w następującym fragmencie:

#włączać


Kiedyś ogłosimy nagłówek w „.plik C ”, możemy zaimplementować Ceil () i dowolną jego funkcje.

Następnie opracowujemy fragment kodu, w którym używamy dwóch zmiennych, A i B, z znakami reprezentującymi odpowiednio cyfry i liter. Następnie wysyłamy je jako argumenty wejściowe do isdigit ().

Korzystając z funkcji printf (), zobaczymy wynik zwracany przez każde połączenia z różnymi znakami wysyłani jako wejście w konsoli poleceń.

#włączać
#włączać
int main ()

char a = „3”;
char b = „a”;
int c;
c = isdigit (a);
printf („jest znakiem numerycznym: %d”, c);
c = isdigit (b);
printf („\ nis nie-numeryczny znak: %d \ n”, c);
powrót 0;


Jak pokazuje poniższy rysunek, wynik zwracany przez ISDIGIT () jest równy 0 dla zmiennej „A”, podczas gdy nie jest równy 0 dla zmiennej „B”, która zawiera znak nie-numeryczny:

Przykład: isdigit () jako warunek w IF WARUNKACJA

Tego rodzaju funkcje, które są używane do określenia typu danych samej zmiennej, nie zapewniają praktycznego rozwiązania. Ale gdy wynik tych funkcji jest dodawany jako warunek w dowolnym rodzaju warunkowym, możemy wykonać kod lub wygenerować zwrot w zależności od tego, czy wprowadzony typ danych jest prawidłowy dla określonego procesu. Jest to szczególnie przydatne, gdy tworzymy własne funkcje, ponieważ unika błędów niezgodności danych lub błędnych wyników, jeśli niewłaściwe dane są przekazywane w argumentach wejściowych.

W tym przykładzie tworzymy prostą aplikację konsoli, w której wprowadzamy znak, pobieramy ją za pomocą funkcji scanf (), a następnie używamy warunku ISDIGIT () dla warunku „jeśli”, aby ustalić, czy wprowadzony znak jest numeryczny, czy nie. Po naciśnięciu „Enter” komunikat „znak jest numeryczny”, jest wyświetlany, jeśli jest numeryczny. W przeciwnym razie wyświetlany jest komunikat „znak nie jest numeryczny”.

Skopiuj i wklej następujący kod dla tego przykładu do „.plik C ”. Skompiluj i uruchom program, wpisz znak i naciśnij Enter. Aby wyjść z aplikacji, naciśnij Ctrl + C:

#włączać
#włączać
void main ()

Char A [2];
While (1)

Scanf („%s” i a [0]);
if (isdigit ( *a) != 0)

printf („znaki to numeryczne \ n”);

w przeciwnym razie

printf („znaki nie jest numeryczne \ n”);


powrót;



Rysunek pokazuje użycie tej funkcji w warunkach „jeśli” i wyniki dla każdego przypadku.

Wniosek

Isdigit () jest jedną z funkcji zdefiniowanych w „Ctype.Nagłówek H ”, który służy do klasyfikowania postaci do różnych podtypów, takich jak numeryczne, alfanumeryczne, wielkie i tak dalej. W tym artykule z podpowiedzi Linuksa wyjaśniliśmy wszystko o funkcji isdigit (). Aby pomóc Ci opanować i zrozumieć ten zasób, stworzyliśmy praktyczne przykłady i fragmenty kodu, które wyjaśniają jego użycie krok po kroku. Dodaliśmy również obrazy pokazujące implementację przykładów w konsoli dowodzenia. Mamy nadzieję, że ten artykuł językowy C za pomocny. Więcej wskazówek i informacji można znaleźć w innych artykułach dotyczących Linuksa.