Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

С - Функции

Функция — это группа операторов, которые вместе выполняют задачу. Каждая программа на C имеет по крайней мере одну функцию, а именно main(). , и все самые простые программы могут определять дополнительные функции.

Вы можете разделить свой код на отдельные функции. Как вы разделяете свой код между различными функциями, зависит от вас, но логически разделение таково, что каждая функция выполняет определенную задачу.

Функция объявление сообщает компилятору об имени функции, типе возвращаемого значения и параметрах. Функция определение предоставляет фактическое тело функции.

Стандартная библиотека C предоставляет множество встроенных функций, которые может вызывать ваша программа. Например, strcat() чтобы объединить две строки, memcpy() для копирования одной ячейки памяти в другую и многие другие функции.

Функция также может называться методом, подпрограммой, процедурой и т. д.

Определение функции

Общая форма определения функции на языке программирования C выглядит следующим образом:

return_type function_name( parameter list ) {
   body of the function
}

Определение функции в программировании на C состоит из заголовка функции. и тело функции . Вот все части функции —

Пример

Ниже приведен исходный код функции с именем max(). . Эта функция принимает два параметра num1 и num2 и возвращает максимальное значение между ними —

/* function returning the max between two numbers */
int max(int num1, int num2) {

   /* local variable declaration */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

Объявления функций

Функция объявление сообщает компилятору имя функции и способ ее вызова. Фактическое тело функции можно определить отдельно.

Объявление функции состоит из следующих частей —

return_type function_name( parameter list );

Для определенной выше функции max() объявление функции выглядит следующим образом —

int max(int num1, int num2);

Имена параметров не важны в объявлении функции, требуется только их тип, поэтому следующее также является допустимым объявлением —

int max(int, int);

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

Вызов функции

При создании функции C вы даете определение того, что эта функция должна делать. Чтобы использовать функцию, вам нужно будет вызвать эту функцию для выполнения определенной задачи.

Когда программа вызывает функцию, управление программой передается вызываемой функции. Вызываемая функция выполняет определенную задачу, и когда ее оператор return выполняется или когда достигается закрывающая фигурная скобка, завершающая функцию, она возвращает управление программой обратно в основную программу.

Чтобы вызвать функцию, вам просто нужно передать необходимые параметры вместе с именем функции, и если функция возвращает значение, вы можете сохранить возвращенное значение. Например —

Живая демонстрация
#include <stdio.h>
 
/* function declaration */
int max(int num1, int num2);
 
int main () {

   /* local variable definition */
   int a = 100;
   int b = 200;
   int ret;
 
   /* calling a function to get max value */
   ret = max(a, b);
 
   printf( "Max value is : %d\n", ret );
 
   return 0;
}
 
/* function returning the max between two numbers */
int max(int num1, int num2) {

   /* local variable declaration */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

Мы сохранили max() вместе с main() и скомпилировали исходный код. При запуске окончательного исполняемого файла это приведет к следующему результату —

Max value is : 200

Аргументы функции

Если функция должна использовать аргументы, она должна объявить переменные, которые принимают значения аргументов. Эти переменные называются формальными параметрами. функции.

Формальные параметры ведут себя как другие локальные переменные внутри функции и создаются при входе в функцию и уничтожаются при выходе.

При вызове функции есть два способа передачи аргументов в функцию —

Серийный номер Тип вызова и описание
1 Вызов по значению

Этот метод копирует фактическое значение аргумента в формальный параметр функции. В этом случае изменения параметра внутри функции не влияют на аргумент.

2 Вызов по ссылке

Этот метод копирует адрес аргумента в формальный параметр. Внутри функции адрес используется для доступа к фактическому аргументу, используемому в вызове. Это означает, что изменения, внесенные в параметр, влияют на аргумент.

По умолчанию C использует вызов по значению. передавать аргументы. В общем случае это означает, что код внутри функции не может изменять аргументы, используемые для вызова функции.


Язык C

  1. Типы пользовательских функций в программировании на C
  2. Передать массивы функции в C
  3. Стандартные библиотечные функции C
  4. Лямбда-функции Python с ПРИМЕРАМИ
  5. Верилог-функции
  6. C - Битовые поля
  7. C - файловый ввод/вывод
  8. C - Переменные аргументы
  9. Полиморфизм в С++
  10. МАТЛАБ — Функции