Разлика между декларация и определение в С

Най- ключова разлика между декларация и дефиниция в C е това декларацията в C казва на компилатора за името на функцията, типа на връщането и параметрите, докато дефиницията в C съдържа действителното изпълнение на функцията. Тоест, декларацията предоставя информация за функцията на компилатора, докато дефиницията съдържа действителните оператори на функцията за изпълнение на конкретна задача.

C е с общо предназначение, структуриран език за програмиране. Той използва структури за управление като if / else, повторения като за цикъл, докато цикъл и функции. Функцията е набор от оператори, който помага да се изпълнява определена задача отново и отново. Освен това е възможно да се извикат функциите от основната функция. След изпълнение на последния оператор на функцията, контролът се връща към основната функция. Тази статия разглежда декларацията и дефиницията на функциите в C и сравнява разликата между тях. Дефиницията на функцията указва какво прави функцията, а декларацията указва какво отива на функцията; той е прототип.

СЪДЪРЖАНИЕ

1. Преглед и ключова разлика
2. Какво е декларация в С
3. Какво е определение в С
4. Паралелно сравнение - декларация срещу определение в С в таблична форма
5. Резюме

Какво е декларация в С?

Декларацията предоставя информация за функцията на компилатора. Синтаксисът на декларацията е следният.

return_ тип function_name (списък с параметри);

Да приемем функция, която изчислява сумата от две цели числа. Декларацията е следната.

int sum (int num1, int num2);

Името на функцията е сбор, а параметрите са две цели числа, които са num1 и num2. Тази функция връща цяло число. Пълното изявление завършва с точка и запетая.

Не е необходимо да се включват имената на параметрите в декларацията. Следователно е възможно да се спомене само вида на данните, както следва. Следва валидна декларация.

int sum (int, int);

Какво е определение в С?

Определението съдържа действителните изрази на функцията за изпълнение на конкретна задача. Синтаксисът е следният.

return_type function_name (списък с параметри)

// функционални изявления

Името на функцията помага да се идентифицира функцията. Когато извиквате функция, стойностите преминават към тази функция. Тези стойности се копират в параметрите. Списъкът с параметри може да съдържа един параметър или брой параметри. И тези параметри имат тип данни и име. Освен това може да има и функции без никакъв параметър.

Изявленията на функцията са вътре в къдравите скоби. Тя е функционното тяло. След изпълнение на функцията тя ще върне стойност. Типът на връщане зависи от стойността на връщане. Ако функцията върне цяло число, типът връщане е int. Ако функцията върне двойник, тогава типът връщане е двоен и т.н..

Вижте по-долу кода с декларация и дефиниция на функция.

Фигура 01: Програма за изчисляване на сумирането на две числа

Според горната програма, ред 3 показва декларацията. Той казва на компилатора за името на функцията, параметрите и т.н. В основната функция две стойности се вземат от клавиатурата и се съхраняват в променливите 'a' и 'b'. В ред 12 тези стойности се предават на функцията, наречена сума. Това „a“ и „b“ са аргументи.

В ред 16 функцията за суми се изпълнява. Той копира стойността a до num1 и стойността b до num2. Тази функция връща сумирането и тази стойност съхранява на променливата 'ans' (ред 12). Накрая отговорът се отпечатва на екрана. Накратко, ред 3 показва декларацията, докато ред 16 до 18 показва дефиницията.

Каква е разликата между декларация и определение в С?

Декларацията е прототип, който определя името на функцията и подписа на типа, като типове данни, типове връщане и параметри, но пропуска функционалното тяло. Дефиницията указва името на функцията и подписите на типа, като типове данни, типове връщане и параметри и включва функционното тяло. Декларацията казва на компилатора за името на функцията и как да я нарече. От друга страна, дефиницията съдържа действителното изпълнение на функцията. Той описва задачата на функцията.

Обобщение - Декларация срещу определение в С

Разликата между декларация и дефиниция в C е, че декларацията в C казва на компилатора за името на функцията, типа връщане и параметрите, докато дефиницията в C съдържа действителното изпълнение на функцията.

справка:

1.Учебни точки. „C функции.“ Точка за уроци, 19 март 2018 г. Достъпно тук  
2. „Прототип на функцията.“ Wikipedia, Фондация Wikimedia, 28 май 2018 г. Достъпно тук