Funkcja to grupa instrukcji używanych do wykonania określonego zadania. W programowaniu C wykonywanie rozpoczyna się od main (). To jest funkcja. Zamiast pisać wszystkie instrukcje w tym samym programie, można go podzielić na wiele funkcji. Każda funkcja będzie wykonywać inne funkcje. Prototyp funkcji informuje kompilator o nazwie funkcji, typach zwracanych parametrach i parametrach. Jest również znany jako deklaracja funkcji. Każda funkcja ma określoną nazwę, aby ją zidentyfikować. Instrukcje funkcji są zapisane w nawiasach klamrowych. Funkcje mogą zwracać wartość. Niektóre funkcje nie zwracają wartości. Dane są przekazywane do funkcji za pomocą listy parametrów. Definicja funkcji ma rzeczywistą funkcjonalność wykonywaną przez funkcję. W programowaniu C istnieje prototyp funkcji i definicja funkcji. The kluczowa różnica między prototypem funkcji a definicją funkcji jest to, że Prototyp funkcji zawiera tylko deklarację funkcji, podczas gdy definicja funkcji zawiera rzeczywistą implementację funkcji. Definicja funkcji zawiera zmienne lokalne i instrukcje, które określają jej działanie.
1. Przegląd i kluczowa różnica
2. Co to jest prototyp funkcji w C
3. Co to jest definicja funkcji w C
4. Podobieństwa między prototypem funkcji a definicją funkcji w C
5. Porównanie obok siebie - Prototyp funkcji a definicja funkcji w C w formie tabelarycznej
6. Podsumowanie
Prototyp funkcji zapewnia deklarację funkcji. Określa nazwę funkcji, typy zwracane, parametry. Typy zwracane to typy danych zwracane z funkcji. Gdy funkcja zwraca liczbę całkowitą, wówczas zwracanym typem jest int. Gdy funkcja zwraca wartość zmiennoprzecinkową, wówczas zwracanym typem jest zmiennoprzecinkowa. Jeśli funkcja nie zwraca żadnej wartości, jest to funkcja void. Nazwa funkcji służy do jej identyfikacji. Słowa kluczowe C nie mogą być używane jako nazwy funkcji. Dane są przekazywane do funkcji za pomocą parametrów. Prototyp funkcji nie zawiera rzeczywistej implementacji funkcji. Prototyp funkcji ma następującą składnię.
(lista parametrów);
Jeśli istnieje funkcja obliczania maksymalnie dwóch liczb, deklarację można zapisać jako int max (int num1, int num2); Maksymalną wartość należy znaleźć w liczbach num1 i num2. Są to liczby całkowite i są przekazywane do funkcji. Na początku typem zwracanym jest także int. Tak więc funkcja zwraca wartość całkowitą. Zapisywanie nazw parametrów w prototypie funkcji nie jest konieczne. Ale konieczne jest zapisanie typów danych. Dlatego int max (int, int); jest również poprawnym prototypem funkcji. Jeśli istnieją dwie liczby całkowite jako num1, num2, num3, a prototyp jest zapisany jako int max (int num1, int num2, num3); jest nieważny. Num1, num2 mają typy danych, ale num3 nie ma typu danych. Dlatego jest nieprawidłowy.
Zobacz poniższy program.
#zawierać
int CarMax (int x, int y);
int main ()
int p = 10;
int q = 20;
int odpowiedź;
answer = calMax (p, q);
printf („Maksymalna wartość to% d \ n”, odpowiedź);
zwraca 0;
int calMax (int p, int q)
wartość int;
jeśli (p> q)
wartość = p;
jeszcze
wartość = q;
wartość zwracana;
Zgodnie z powyższym druga instrukcja pokazuje prototyp funkcji. Nie ma implementacji. Rzeczywista realizacja następuje po programie głównym. Prototypy funkcji są bardziej przydatne podczas definiowania funkcji w jednym pliku źródłowym i wywoływania tej funkcji w innym pliku.
Definicja funkcji ma faktyczną implementację funkcji. Zawiera to, co funkcja powinna zrobić. Gdy program wywołuje funkcję, sterowanie jest przekazywane do wywoływanej funkcji. Po wykonaniu funkcji sterowanie powraca do funkcji głównej. Wymagane dane są przekazywane do funkcji jako lista parametrów. Jeśli zwracana jest wartość, wówczas wymieniony jest typ zwracany. Jeśli nie ma zwracanych wartości, typ zwracany jest nieważny. Sprawdź poniższą funkcję, aby obliczyć pole trójkąta.
#zawierać
float calArea (int x, int y);
int main ()
int p = 10;
int q = 20;
obszar flaot;
obszar = calArea (p, q);
printf („Maksymalna wartość to% f \ n”, obszar);
zwraca 0;
float calArea (int x, int y)
wartość zmiennoprzecinkowa;
wartość = 0,5 * x * y;
wartość zwracana;
Zgodnie z powyższym programem druga instrukcja wskazuje prototyp funkcji. Rzeczywista implementacja tego, co wykonuje funkcja, jest zapisywana po programie głównym. Jest to definicja funkcji. Wartości p i q są przekazywane do funkcji calArea. Wartość zmiennej jest zmienną lokalną dla funkcji calArea. Obszar jest obliczany i przypisywany do wartości zmiennej. Następnie wraca do programu głównego.
Prototyp funkcji a definicja funkcji w C | |
Prototyp funkcji określa nazwę funkcji, typ zwracany, parametry, ale pomija treść funkcji. | Definicja funkcji określa nazwę funkcji, typ zwracany; parametry obejmują treść funkcji. |
Realizacja | |
Prototyp funkcji nie ma implementacji funkcji. | Definicja funkcji ma implementację funkcji. |
Korzystanie z funkcji w programach ma zalety. Funkcje zwiększają możliwość ponownego użycia kodu. Nie ma potrzeby wielokrotnego pisania tego samego kodu. Zamiast tego programista może podzielić program i wywołać niezbędną funkcję. W C są funkcje biblioteczne. Funkcje te są zadeklarowane w plikach nagłówka C. Niektóre z nich to printf (), scanf () itp. Programista może także pisać własne funkcje. Istnieją dwa terminy związane z funkcjami w C. Funkcjonują prototyp i definicja funkcji. Różnica między prototypem funkcji a definicją funkcji w C polega na tym, że prototyp funkcji zawiera tylko deklarację funkcji, podczas gdy definicja funkcji zawiera rzeczywistą implementację funkcji.
Możesz pobrać wersję PDF tego artykułu i używać go do celów offline zgodnie z cytatem. Pobierz wersję PDF tutaj: Różnica między prototypem funkcji a definicją funkcji w C
1.C Definicje funkcji. Dostępny tutaj
2.tutorialspoint.com. „Funkcje C.” Punkt. Dostępny tutaj
1. „Logo języka programowania C” Reyansansowy (domena publiczna) przez Commons Wikimedia