Функции

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

  1. Тип возвращаемых значений(например, int)
  2. Имя функции (f ())
  3. Внутри скобок перечисляются аргументы, у каждого из них задан тип(в отличие от python-а)
    int f(int a, int b)
  4. В фигурных скобках тело функции
  5. return() - возвращает результат

Иногда бывает нужно, чтобы f вызывала g, а g вызывала f. Например, такое возможно в "Ханойских башнях II типа". Для этого нужно сначала описать функцию, т.е. объявить ее:

int f(int a, int b);
int g();

Глобальная переменная - переменная, объявленная(описанная) вне функции. Иначе - локальная. Локальная перменная живет только внутри функции.

Для функции без результата используется тип данных void, а если нужна функция без параметров, то нужно оставить пустые скобки.


Указатели

Указатель содержит в себе адрес в памяти, под которым лежит данная переменная:

int *C;
Пусть объявлена переменная a, b и указатель *C:
int a;
int *C;
Тогда
C = &a;
Будет указывать на место в памяти переменной "а", т.е. смысл "&" - возьми адрес этой переменной. Т.е. теперь если написать
*c
То получим значение переменной "a".

Напишем функции myswap(), которая меняет значения двух переменных местами.

void myswap(int *x, int *y){
int z = *x;
*x = *y;
*y = z;

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

Также можно одному указателю присвоить другой, к указателю можно прибавить число, и из одного указателя вычесть другой(получим размер между ними, например количество элементов массива)


Также я выложил фото конспектов последних уроков в тетради:

  1. фото1
  2. фото2
  3. фото3
  4. фото4
  5. фото5
  6. фото6
  7. фото7
  8. фото8
  9. фото9
  10. фото10
  11. фото11