Składnia/ deklaracja
Podobnie jak składnia funkcji normalnych do deklaracji w C, czyli:
[RetUnType] FunctionName ([ParameterType] Parametr);Funkcja assert jest również zadeklarowana w podobny sposób, jak:
void Assert (ekspresja bool);Parametry
FuncationName= Asert
ParameterType= Boolean
Parametr= Wyrażenie
Podobnie jak w każdym innym wyrażeniu w świecie języków programowania, wymaga wyrażenia boolowskiego do porównania (każdy rodzaj logicznego porównania, nierówności itp.). Sprawdza, czy wyświetlenie komunikatu o błędzie jest fałszywe i przerywa wykonywanie programu, lub program działa płynnie bez żadnych odstrzennych.
Typ powrotu= pustka
Jak powiedzieliśmy wcześniej, funkcja Assert jest makro, w przebraniu funkcji, a makro nie zwraca żadnej wartości. To jest powód, dla którego jego typ powrotu jest nieważny.
Przykład 1
W naszym pierwszym przykładzie utworzymy prostą funkcję do obliczenia średniej za pomocą tablic w języku C.
Użyjemy funkcji Assert, ograniczając użytkownika od wprowadzenia nieprawidłowego wejścia do zmiennej N. Jako przypadkowe dane wejściowe 0, Zmienne obecne w tablicy w normalnych okolicznościach będzie problemem dla tego programu. Podziel sumę zmiennych obecnych w tablicy o wielkości tablicy, znanej również jako N. Dowolna liczba podzielona przez 0 powoduje błąd środowiska wykonawczego, dlatego użyjemy funkcji Assert, aby rozwiązać ten problem. Teraz zacznijmy od kodowania.
Utwórz plik notatnika i nazwij go wszystkim. W naszym przypadku zachowamy naszą nazwę pliku „Przykład 1" i dodaj .rozszerzenie CPP na końcu mojej nazwy pliku.
Teraz otwórz terminal wiersza polecenia i wpisz następujące polecenie:
$ gcc -o [Twoja nazwa pliku] [nazwa pliku].CPPSłuży do kompilacji programów i wyników podobnych do poniższego obrazu, chyba że masz jakieś błędy kompilacji w programie.
W końcu typ:
$ [Twoja nazwa pliku].exeDo wykonania programu C w wierszu polecenia.
Teraz zagłębmy się w główne danie przykładu. Po pierwsze, musimy dodać nagłówek Assert u góry.
Aby upewnić się, że problem nie wystąpi, użyjemy funkcji assert i przekazamy wyrażenie, aby zapewnić to.
I to wszystko, przetestujmy nasz program. Kiedy użytkownik wprowadza wartość N równa się 0.
Jak wynika z ekranu opublikowanego powyżej, funkcja Assert nagle przepływ wykonywania, gdy wyrażenie stało się fałszywe i opowiedziała nam powód, dla którego program ABORT ().
Gdy użytkownik wprowadzi prawidłową wartość, otrzymamy bezpłatny program płynnego uruchamiania.
Przykład 2
W tym przykładzie utworzymy program C, który przyjmuje ciąg nazwy użytkownika i zwraca Witam [nazwa użytkownika] jako wyjście.
Powyższy program nie ma błędu, ale możesz już znać problem, jeśli masz jakieś wcześniejsze wrażenia z wejściami ciągów. Problem polega na tym, że użytkownik może wprowadzić pusty ciąg, a ten program zostanie wykonany za pomocą zaczepu i wyświetlania Cześć w rezultacie.
To jest powód, dla którego potrzebujemy funkcji assert, aby upewnić się, że pusty ciąg nie jest wprowadzony. Wiertło do kodowania jest takie same jak wcześniej; Musimy tylko zmienić umieszczenie deklaracji funkcji Assert i jej wyrażenia. Użytkownik zwykle naciska klawisz „Enter”, aby wprowadzić pusty ciąg, który jest „\ 0” pod względem typu zmiennej char. Przekażemy wyrażenie, aby potwierdzić funkcję, która sprawdza, że ciąg nie jest pusta.
Sprawdźmy wynik zmian, które właśnie wprowadziliśmy do naszego kodu, gdy użytkownik wprowadza pusty ciąg.
I jak widać na zrzucie ekranu, funkcja Assert odpowiedziała na wyrażenie poprawnie i nagłe wykonanie programu, aby wyświetlić komunikat o błędzie. Nazwa użytkownika jest teraz wprowadzana.
Nic się nie wydarzyło, ponieważ warunek ekspresji funkcji jest spełniony.
Wniosek
Ten artykuł obejmował funkcję Assert, jej składnię, sposób, w jaki jest zadeklarowany, a także kilka przykładów związanych z nim. Możesz zmienić przykłady zgodnie z obowiązkami zawodowymi. Mam nadzieję, że ten samouczek był łatwy do zrozumienia i wyczyścił wszystkie twoje zapytania związane z funkcją assert w języku C.