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

Оглавление:

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

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

Видео: Разница между прототипом функции и определением функции в C
Видео: 1001364 2024, Ноябрь
Anonim

Ключевое отличие - прототип функции против определения функции в C

Функция - это группа операторов, используемых для выполнения определенной задачи. В программировании на C выполнение начинается с main (). Это функция. Вместо того, чтобы писать все операторы в одной программе, ее можно разделить на несколько функций. Каждая функция будет выполнять разные функции. Прототип функции сообщает компилятору имя функции, возвращаемые типы и параметры. Это также известно как объявление функции. Каждой функции присвоено определенное имя. Операторы функций записаны в фигурных скобках. Функции могут возвращать значение. Некоторые функции не возвращают значение. Данные передаются в функцию с использованием списка параметров. Определение функции имеет фактическую функциональность, выполняемую функцией. В программировании на C есть прототип функции и определение функции. Ключевое различие между прототипом функции и определением функции заключается в том, что прототип функции содержит только объявление функции, а определение функции содержит фактическую реализацию функции. В определении функции есть локальные переменные и операторы, которые определяют, что функция делает.

СОДЕРЖАНИЕ

1. Обзор и основные отличия

2. Что такое прототип функции в C

3. Что такое определение функции в C

4. Сходства между прототипом функции и определением функции в C

5. Параллельное сравнение - прототип функции и определение функции в C в табличной форме

6. Резюме

Что такое прототип функции в C?

Прототип функции предоставляет объявление функции. В нем указывается имя функции, типы возвращаемых данных и параметры. Типы возвращаемого значения - это тип данных, возвращаемый функцией. Когда функция возвращает целое число, возвращается тип int. Когда функция возвращает значение с плавающей запятой, тип возвращаемого значения - это число с плавающей запятой. Если функция не возвращает никакого значения, это недействительная функция. Имя функции используется для ее идентификации. Ключевые слова 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 нет типа данных. Следовательно, это недействительно.

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

Обратитесь к программе ниже.

#включают

int CarMax (int x, int y);

int main () {

int p = 10;

int q = 20;

int answer;

answer = calMax (p, q);

printf («Максимальное значение% d / n», ответ);

возврат 0;

}

int calMax (int p, int q) {

значение int;

if (p> q) {

значение = p;

}

else {

значение = q;

}

возвращаемое значение;

}

Согласно вышеизложенному, второй оператор показывает прототип функции. У него нет реализации. Фактическая реализация - после основной программы. Прототипы функций более полезны при определении функции в одном исходном файле и вызове этой функции в другом в другом файле.

Что такое определение функции в C?

Определение функции имеет фактическую реализацию функции. Он содержит то, что должна делать функция. Когда программа вызывает функцию, управление передается вызываемой функции. После выполнения функции управление возвращается к основной функции. Необходимые данные передаются в функцию в виде списка параметров. Если есть возвращаемое значение, то указывается тип возвращаемого значения. Если возвращаемых значений нет, возвращаемый тип недействителен. Обратитесь к функции ниже, чтобы вычислить площадь треугольника.

#включают

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 * х * у;

возвращаемое значение;

}

Согласно приведенной выше программе, второй оператор указывает прототип функции. Фактическая реализация того, что выполняет функция, написана после основной программы. Это определение функции. Значения p и q передаются в функцию calArea. Значение переменной - это локальная переменная для функции calArea. Площадь рассчитывается и присваивается значение переменной. Затем он возвращается в основную программу.

Каковы сходства между прототипом функции и определением функции в C?

  • И прототип функции, и определение функции связаны с функциями.
  • И прототип функции, и определение функции содержат имя функции.
  • И прототип функции, и определение функции содержат типы возвращаемых значений.
  • И прототип функции, и определение функции содержат параметры.

В чем разница между прототипом функции и определением функции в C?

Различать статью в середине перед таблицей

Прототип функции против определения функции в C

Прототип функции указывает имя функции, тип возвращаемого значения, параметры, но опускает тело функции. В определении функции указывается имя функции, тип возвращаемого значения; параметры включают тело функции.
Реализация
Прототип функции не имеет реализации функции. Определение функции имеет реализацию функции.

Резюме - Прототип функции против определения функции в C

Использование функций в программах имеет преимущества. Функции увеличивают возможность повторного использования кода. Нет необходимости писать один и тот же код снова и снова. Вместо этого программист может разделить программу и вызвать необходимую функцию. В C есть библиотечные функции. Эти функции объявлены в заголовочных файлах C. Некоторые из них - это printf (), scanf () и т. Д. Программист также может писать свои собственные функции. С функциями в C связаны два термина. Это прототип функции и определение функции. Разница между прототипом функции и определением функции в C состоит в том, что прототип функции содержит только объявление функции, а определение функции содержит фактическую реализацию функции.

Загрузите PDF-файл с описанием прототипа функции и определения функции на C

Вы можете загрузить PDF-версию этой статьи и использовать ее в автономных целях в соответствии с примечанием к цитированию. Пожалуйста, скачайте PDF-версию здесь: Разница между прототипом функции и определением функции в C

Рекомендуем: