Читаем Освой самостоятельно С++ за 21 день. полностью

Примечание:  Более подробно функции рассматриваются на занятии 5; типы значений, возвращаемых функциями, — на занятии 3. Информация, представленная на этом занятии, является хотя и обзорной, но вполне достаточной для усвоения последующего материала, поскольку функции будут использоваться практически во всех программах, представленных в этой книге.

В листинге 2.5 демонстрируется функция, которая принимает два целочисленных параметра и возвращает целочисленное значение. Не беспокойтесь пока насчет синтаксиса или особенностей работы с целыми значениями (например, int x): эта тема подробно раскрывается на занятии 3.

Листинг 2.5. Пример использования простой функции (FUNC.CPP)

1: #include

2: int Add (int x, int у)

3: {

4:

5:    cout << "In Add, received " << x << " and " << у << "\n";

6:    return (x+y);

7: }

8:

9:  int main

10: {

11:    cout << "I'm in main!\n";

12:    int а, b, с;

13:    cout << "Enter two numbers: ";

14:    cin >> а;

15:    cin >> b;

16:    cout << "\nCalling Add\n";

17:    c=Add(a,b);

18:    cout << "\nBack in main.\n";

19:    cout << "с was set to " << с;

20:    cout << "\nExiting...\n\n";

21:    return 0;

22: }

Результат:

I'm in main!

Enter two numbers: 3 5

Calling Add

In Add, received 3 and 5

Back in main.

c was set to 8

Exiting...

АНАЛИЗ: Функция Add определена в строке 2. Она принимает два целочисленных параметра и возвращает целочисленное значение. Сама же программа начинается в строке 9, выводя на экран первое сообщение. Затем пользователю предлагается ввести два числа (строки 13—15). Пользователь вводит числа, разделяя их пробелом, а затем нажимает, клавишу . В строке 17 функция main передает функции Add в качестве аргументов два числа, введенные пользователем.

Управление программой переходит к функции Add, которая начинается в строке 2. Параметры а и b выводятся на экран, а затем складываются. Результат функции возвращается в строке 6, и на этом функция завершает свою работу.

<p>Резюме</p>

Сложность изучения такого предмета, как программирование, состоит в следующем: большая часть изучаемого вами материала во многом зависит от того, что вам еще только предстоит изучить. На этом занятии вы познакомились с основными составляющими частями простой программы на языке C++. Кроме того, вы получили представление о цикле разработки и узнали несколько важных терминов.

<p>Вопросы и ответы</p>

Какую роль выполняет директива #include?

Это команда для препроцессора, который автоматически запускается при вызове компилятора. Данная директива служит для введения содержимого файла, имя которого стоит после директивы, в исходный текст программы.

В чем разница между символами комментариев // и /*?

Комментарии, выделенные двойным слешем (//), распространяются до конца строки. Комментарии, начинающиеся слешем со звездочкой (/*), продолжаются до тех пор, пока не встретится символ завершения комментария (*/). Помните, что даже конец функции не завершит действие комментария, начавшегося с пары символов (/*). Если вы забудете установить завершение комментария (*/), то получите сообщение об ошибке во время компиляции.

В чем разница между хорошими и плохими комментариями?

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

<p>Коллоквиум</p>

В этом разделе предлагаются вопросы для самоконтроля и укрепления полученных знаний и приводится несколько упражнений, которые помогут закрепить ваши практические навыки. Попытайтесь самостоятельно ответить на вопросы теста и выполнить задания, а потом сверьте полученные результаты с ответами в приложении Г. Не приступайте к изучению материала следующей главы, если для вас остались неясными хотя бы некоторые из предложенных ниже вопросов.

<p>Контрольные вопросы</p>

1. В чем разница между компилятором и препроцессором?

2. В чем состоит особенность функции main?

3. Какие два типа комментариев вы знаете и чем они отличаются друг от друга?

4. Могут ли комментарии быть вложенными?

5. Могут ли комментарии занимать несколько строк?

<p>Упражнения</p>

1. Напишите программу, которая выводит на экран сообщение I love C++.

2. Напишите самую маленькую программу, которую можно скомпилировать, скомпоновать и выполнить.

Перейти на страницу:

Похожие книги

Сущность технологии СОМ. Библиотека программиста
Сущность технологии СОМ. Библиотека программиста

В этой книге СОМ исследуется с точки зрения разработчика C++. Написанная ведущим специалистом по модели компонентных объектов СОМ, она раскрывает сущность СОМ, помогая разработчикам правильно понять не только методы модели программирования СОМ, но и ее основу. Понимание мотивов создания СОМ и ее аспектов, касающихся распределенных систем, чрезвычайно важно для тех разработчиков, которые желают пойти дальше простейших приложений СОМ и стать по-настоящему эффективными СОМ-программистами. Показывая, почему СОМ для распределенных систем (Distributed СОМ) работает именно так, а не иначе, Дон Бокс дает вам возможность применять эту модель творчески и эффективно для ежедневных задач программирования.

Дональд Бокс

Программирование, программы, базы данных / Программирование / Книги по IT