Когда в программе используется функция, такая как puts(), принято говорить, что происходит вызов функции. Выражение «вызов функции» означает, что вы указываете Си выполнить некую функцию. Круглые скобки после имени функции могут оставаться пустыми или содержать параметры. Параметр — это элемент информации, необходимой для того, чтобы функция могла выполнить задачу*. Например, puts() является библиотечной функцией, она содержит инструкции, указывающие компьютеру вывести строку символов на экран монитора. Но какую именно строку он должен вывести? Мы должны определить это путем помещения соответствующей информации в круглые скобки. Подобная процедура называется передачей параметров.
Так, в инструкции
puts("Привет");
слово «Привет» является параметром, который мы передаем функции. Как показано на рис.2, мы говорим компилятору, что он должен выполнить функцию puts(), используя при этом слово «Привет». Кавычки являются индикатором, который указывает, что мы хотим отобразить на экране именно буквы П-р-и-в-е-т, а не какую-либо переменную или константу с таким именем (смотри главу3).
Рис. 2. Передача параметра библиотечной функции
В этой книге в дальнейшем мы будем называть инструкции типа puts("Привет") функциями. В то же время вы должны помнить, что в библиотеке содержится только функция, называемая puts(), так что, строго говоря, puts("Привет") — это инструкция, которая вызывает функцию puts() и передает ей слово «Привет» в качестве параметра.
Слово «Привет» в нашем примере является одним параметром. Функция puts() может иметь только один параметр: символ, слово или фразу, которые мы хотим отобразить на экране. Позднее вы познакомитесь с функциями, которые могут иметь несколько параметров. Для многих функций передача параметров не является обязательной процедурой. По мере знакомства с функциями языка Си вы узнаете о параметрах больше.
Проверьте, правильно ли вы поняли разницу между функцией main() и другими функциями, такими как puts(). Мы используем имя main() для функции, содержащей наши инструкции компьютеру. Мы не вызываем функцию main(), но требуем выполнения содержащихся в ней инструкций, и одна из этих инструкций вызывает функцию puts(). Таким образом, puts() — это функция, вызываемая функцией main().
______________________
* Список параметров, передаваемых функции при ее вызове, часто называют списком фактических параметров, а его элементы, соответственно, фактическими параметрами.