Функцията е група от оператори, използвани за изпълнение на конкретна задача. При програмиране на C изпълнението започва от main (). Това е функция. Вместо да пише всички изявления в една и съща програма, тя може да бъде разделена на множество функции. Всяка функция ще изпълнява различни функции. Прототипът на функцията казва на компилатора за името на функцията, типовете връщане и параметрите. Известен е също като декларация за функция. Всяка функция има определено име, за да я идентифицира. Функционалните операции са написани вътре в двойка къдрави скоби. Функциите могат да върнат стойност. Има някои функции, които не връщат стойност. Данните се предават на функцията, използвайки списъка с параметри. Дефиницията на функцията има действителната функционалност, изпълнявана от функцията. В програмирането на C има прототип на функцията и дефиниция на функцията. Най- ключова разлика между прототипа на функцията и определението на функцията е, че прототип на функцията съдържа само декларацията на функцията, докато дефиницията на функцията съдържа действителното изпълнение на функцията. Дефиницията на функцията има локалните променливи и операторите, които определят какво прави функцията.
1. Преглед и ключова разлика
2. Какво е прототип на функцията в С
3. Какво е определение на функцията в C
4. Прилики между прототип на функция и определение на функцията в C
5. Паралелно сравнение - прототип на функцията спрямо определението на функцията в С в таблична форма
6. Резюме
Функцията прототип предоставя декларация за функция. Тя посочва името на функцията, типовете връщане, параметрите. Типовете връщане са типът данни, който се връща от функцията. Когато функция връща цяло число, тогава типът връщане е int. Когато функция връща float стойност, тогава типът return е float. Ако функцията не връща никаква стойност, това е функция за невалидност. Името на функцията се използва за идентифицирането му. C ключовите думи не могат да се използват като имена на функции. Данните се предават на функцията с помощта на параметри. Прототипът на функцията не съдържа реалната реализация на функцията. Прототипът на функцията има следния синтаксис.
(списък с параметри);
Ако има функция за изчисляване на максимума от две числа, декларацията може да бъде записана като int max (int num1, int num2); Максималната стойност трябва да бъде намерена в num1 и num2. Това са цели числа и те се предават на функцията. Връщане тип, в началото, също е int. Така че функцията връща цяло число. Не е необходимо да се пишат имена на параметри в прототипа на функцията. Но е необходимо да се напишат типовете данни. Следователно, int max (int, int); също е валиден прототип на функция. Ако има две цели числа като num1, num2, num3 и прототипът се записва като int max (int num1, int num2, num3); тя е невалидна. Num1, num2 имат типове данни, но num3 няма тип данни. Следователно той е невалиден.
Вижте по-долу програмата.
#include
int CarMax (int x, int y);
int main ()
int p = 10;
int q = 20;
вътрешен отговор;
отговор = calMax (p, q);
printf („Максималната стойност е% d \ n“, отговор);
връщане 0;
int calMax (int p, int q)
int стойност;
ако (p> q)
стойност = p;
друго
стойност = q;
възвръщаема стойност;
Според горното, второто твърдение показва прототипа на функцията. Той няма изпълнение. Реалното изпълнение е след основната програма. Прототипите на функциите са по-полезни, когато дефинирате функция в един изходен файл и извикате тази функция в друг в друг файл.
Дефиницията на функцията има реалното изпълнение на функцията. Той съдържа това, което функцията трябва да прави. Когато програмата извика функцията, контролът се прехвърля към наречената функция. След изпълнението на функцията, контролът се връща към основната функция. Необходимите данни се предават на функцията като списък с параметри. Ако има стойност, която се връща, тогава се споменава типът връщане. Ако няма връщащи се стойности, типът връщане е невалиден. Вижте по-долу функцията, за да изчислите площта на триъгълник.
#include
float calArea (int x, int y);
int main ()
int p = 10;
int q = 20;
зона на стъпалото;
площ = calArea (p, q);
printf („Максималната стойност е% f \ n“, област);
връщане 0;
float calArea (int x, int y)
плаваща стойност;
стойност = 0,5 * x * y;
възвръщаема стойност;
Според горната програма, второто твърдение показва прототипа на функцията. Действителното изпълнение на функцията се записва след основната програма. Това е дефиницията на функцията. Стойностите p и q се предават на функцията calArea. Стойността на променливата е локална променлива на функцията calArea. Площта се изчислява и се присвоява на променливата стойност. След това се връща обратно към основната програма.
Функция прототип срещу определение на функция в C | |
Прототипът на функцията определя името на функцията, типа връщане, параметрите, но пропуска функционното тяло. | Дефиницията на функцията определя името на функцията, типа връщане; параметрите включват функционално тяло. |
изпълнение | |
Прототипът на функцията няма изпълнение на функцията. | Дефиницията на функцията има изпълнение на функцията. |
Използването на функции в програмите има предимства. Функциите увеличават повторното използване на кода. Не е необходимо да пишете един и същ код отново и отново. Вместо това програмистът може да раздели програмата и да извика необходимата функция. В C има библиотечни функции. Тези функции са декларирани в заглавните файлове на C. Някои от тях са printf (), scanf () и т.н. Програмистът също може да напише свои собствени функции. Има два термина, които са свързани с функциите в C. Те функционират прототип и дефиниция на функция. Разликата между прототипа на функцията и дефиницията на функцията в C е, че прототипът на функцията съдържа само декларацията на функцията, докато дефиницията на функцията съдържа действителното изпълнение на функцията.
Можете да изтеглите PDF версията на тази статия и да я използвате за офлайн цели, съгласно цитираната бележка. Моля, изтеглете PDF версията тук: Разлика между прототип на функция и определение на функцията в C
Определения за функция 1.C. Налични тук
2.tutorialspoint.com. „C функции.“ Точката. Налични тук
1. 'Логото на езика за програмиране на C' чрез Rezonansowy (Public Domain) чрез Wikimedia на Commons