Разлика между декларация и дефиниция в C

Съдържание:

Разлика между декларация и дефиниция в C
Разлика между декларация и дефиниция в C

Видео: Разлика между декларация и дефиниция в C

Видео: Разлика между декларация и дефиниция в C
Видео: Различия между корпорацией и компанией с ограниченной ответственностью LLC 2024, Юли
Anonim

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

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

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

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

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

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

int сума (int num1, int num2);

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

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

int сума (int, int);

Какво е дефиниция в C?

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

return_type име_на_функция (списък с параметри){

// функционални изрази

}

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

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

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

Разлика между декларация и дефиниция в C
Разлика между декларация и дефиниция в C

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

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

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

Каква е разликата между декларация и дефиниция в C?

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

Разлика между декларация и дефиниция в C в таблична форма
Разлика между декларация и дефиниция в C в таблична форма

Резюме – Декларация срещу дефиниция в C

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

Препоръчано: