Функции в языке Си
В пятом уроке мы обсуждали структурную и процедурную парадигмы программирования. К настоящему моменту, я надеюсь, вы уже освоились с ветвлениями и циклами. Если это так, то можно сказать, что базовые конструкции структурной парадигмы программирования вами усвоены.
Пора разобраться с главной конструкцией процедурной парадигмы — функциями.
Функция в Си — это обособленная часть программы, которая решает какую-то локальную задачу и имеет собственное имя. Иногда используют более общий термин подпрограмма.
Основная "фишка" функций состоит в том, что однажды написанную функцию затем можно многократно переиспользовать в различных местах программы. Использование функций делает код более понятным и структурированным, а также упрощает написание и отладку больших программ.
В прошлых уроках Курса, мы неоднократно использовали различные стандартные функции, например: printf, scanf, sqrt, pow, rand и многие другие. Все они входят в стандартную библиотеку языка Си. Чуть подробнее о ней можно почитать в отдельной заметке.
Функции стандартной библиотеки мы получили вместе с компилятором языка Си. Их создали другие программисты, а мы их только использовали. Это нормальная практика, одни программисты пользуются результатами труда других программистов.
И вы, конечно, тоже можете написать собственные функции. Я вам больше скажу, вы уже неоднократно создавали собственные функции. Удивлены?А удивляться тут нечему, ведь в каждой вашей программе присутствовала функция main. Её вам всегда приходилось писать самостоятельно. Так что у вас уже есть опыт в создании пользовательских функций.
Кроме того, начиная с самого первого урока, мы то тут, то там разбирались в том, как устроены функции, как они работают, как в них передавать значения, как получать результат работы функции и пр. Но всё это было как-то беспорядочно.
В этом уроке систематизируем и углубим наши разрозненные знания о функциях, чтобы в дальнейшем уже сознательно использовать этот мощный инструмент языка Си.