Функции, пустота и область применения

Функция – это блок кода, который запускается при вызове.
Их лучше всего использовать для кода, который необходимо повторять в вашем проекте.

В C функция, с которой вы будете работать больше всего, — это основная функция. Эта функция является точкой входа в любую программу на C. Есть много других встроенных функций, таких как:

  • printf
  • сканф

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

// A Function cosists of the following
// A function definition contains the following
// Return type name (parameters)
int addTen(int x) {
   return x + 10;
}
// Not all functions have to return values
// These functions will have the void type
void countDown(int start){
    while(start >= 0){
        printf("%d!", start);
        start--;
    }
}

Как показано выше, функция состоит из следующих разделов:

  • Прототип функции
    — int functionName(params);
    — Объявляет функцию
    — Может сопровождаться телом или использоваться как объявление в начале файла, чтобы сообщить компилятору о функция до ее определения
  • Тело функции
    — все, что находится между {}
    — что на самом деле делает функция
  • Вызов функции
    —int number = functionName(param1, param2);
    — Выполняет функцию
    — Может вызываться много раз
//Function prototype
int product(int x, int y);
int main(){
   int pro = product(10, 6); //Function call
   printf("The product of 10 and 6 is: %d", pro);
   return 0;
}
//Function definition
int product(int x, int y){
  return x * y;
}

Тип возвращаемого значения функции Void

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

void printName(string name) {
   printf("Your name is: %s", name);
}

Область действия переменной

Область действия — это время жизни переменной в языке C
Это определяет, когда переменная доступна для использования.

Различают два основных типа охвата:

  • Local
    — переменная, определенная внутри функции
    — доступ к ней можно получить после объявления переменных до тех пор, пока функция не вернется
void localScope(){
   int a = 20;
   printf("A locally is: %d", a);
}
int main(){
   printf("Will cause an error, because a doesn't exist: %d", a);
}
  • Global
    — переменная, определенная вне функций в файле
    — может использоваться в любом месте файла
int x = 20;
int main(){
   printf("X is: %d", x); //X is: 20
   x++;
   doubleX();
   printf("X is: %d", x); //X is: 40
   return 0;
}
void doubleX(){
  x*=2;
}

Если у вас не было возможности прочитать мои предыдущие статьи, посмотрите на:

Последняя часть этой серии выйдет на следующей неделе.