adblock check

Объясните доходчиво функции

В C++. Что такое аргументы функции, какие бывают типы функций и как их использовать, что, куда и откуда возвращает функция, всегда ли главная функция в конце кода? Читал об этом на code-live, непонятно для меня написано

Dimanaux
Пользователь
8 комментариев по лайкам по дате
Оставьте комментарий...
Оставьте комментарий...
Функция позволяет сократить размеры кода и увеличить его читабельность.

Функции могут быть различных типов вроде
  • void (не могут ничего возвращать, так же можно выполнять действия с глобальными перемененными)
  • int, unsigned int, long, float (могут возвращать только числовые значения)
  • string (могут возвращать любые символьные значение)

Функции имеют вид:

тип название (параметр 1, параметр 2,… параметр n) { код функции }

Допустим:

int function(int a, int b, int c){
//мой код
}

Теперь давай создадим функцию которая будет печатать нам выводить текст на экран:

void printfunc(){
cout << «Hello function!» << endl;
}

int main(){
printfunc();
}

В итоге на экране мы будем видеть наше сообщение

Теперь давай создадим функцию которая будет что либо возвращать, для этого нам потребуется специальный оператор return, который имеет следующий вид:

return любое значение;

return a; return 20;

Cоздадим теперь функцию калькулятора

int потому что будем работать с числами и их же возвращать.

int calcfunc(int a, int b){
int result;
result = a * b;
return result;
}

int main(){
cout << calcfunc(10, 20) << '\n';
}

так же в main можно работать и с перменными

int main(){
int fa = 10, fb = 20;
cout << calcfunc(fa, fb) << '\n';
}

Хотел бы ещё добавить, если ты в функцию отправляешь int, а возвращаемые данные в float, то целого числа не будет. Вместо желаемых 125 будет 125.00.

По идее так, так же хотел бы добавить что если функция ничего не возвращает, следует использовать void, так как это позволит тебе сохранить память озу, так как этот тип функции не столь требователен к памяти.
По идее с калькулятором ещё можно сделать так:
Обрати внимание что теперь функция имеет тип void

void calcfunc(int a, int b){
int result;
result = a * b;
cout << result;
}

int main(){
calcfunc(10, 20);
}

Либо возьмём старый код и занесём возвращаемое значение в переменную

int calcfunc(int a, int b){
int result;
result = a * b;
return result;
}

int main(){
int calcreturn;
calcreturn = calcfunc(10, 20);
cout << calcreturn << '\n';
}

В данном случае у тебя переменная calcreturn будет иметь значение 200.

Хотел бы обратить внимание ещё на то что переменные в функции не доступны вне функции.
я бы посоветовал тебе купить Arduino UNO/Mega и примочки всякие разные, так ты сможешь изучать основы языков семейства С (С процедурный или ООП на выбор) и делать крутые вещи