Урок 8. Структура программ С++

   ⁄ 

 Обновлено 17 Апр 2017

  ⁄   

Компьютерная программа — это последовательность инструкций, которые говорят компьютеру, что делать.

Statements и Expressions

Statement – это наиболее распространенный тип инструкций в программах. В общем то, это и есть сама инструкция, наименьшая независимая единица в языке С++. В качестве аналогии можно сказать, что statement — это как предложение в русском языке. В дальнейшем statement будет переводиться как то же самое, что и инструкция, либо операция. Мы пишем предложения, чтобы передать какую-то идею. В C++ мы пишем стейтменты, чтобы выполнить задание. Инструкции в C++ заканчиваются точкой с запятой.

Есть много различных видов инструкций в C++. Ниже приведены самые распространенные типы простых стейтментов:

int х – это statement declaration (операция объявления). Она сообщает компилятору, что х является переменной. В программировании, каждая переменная занимает ячейку памяти. Все переменные в программе должны быть объявлены, прежде чем использованы. Мы детальнее обсудим переменные в следующих уроках.

х = 5 – это assignment statement (операция присваивания). Мы присвоили значение 5 переменной х.

std::cout << x; — это output statement (операция вывода). Она выводит значение переменной х на экран.

Компилятор также способен решать выражения. Expression (выражение) – это любая комбинация операндов, знаков операций или элементов данных, которое ведёт к вычислению значения. Например, в математике, выражение 2+3 равно значению 5. Выражениями могут быть значения (например: 2, 4), переменные (например: х, у), операторы (такие как +, -) и функции. Они могут быть выражены одним значением (например: 2 или х) или комбинацией (например: 2 + 3, 2 + х, х + у или (2 + х) * (y-3)).

Вот еще пример правильной операции присваивания: х = 2 + 3; — здесь 2+3 – это выражение, которое вычисляется в значение 5. Затем значение 5 присваивается переменной х.

Функции

В C++, стейтменты, как правило, группируются в блоки, которые называют функциями. Функция — это набор инструкций, которые последовательно выполняются. Каждая программа C++ должна иметь главную функцию – main(). Именно с первой инструкции в main() и начинается выполнение. Функции, как правило, выполняют конкретное задание. Например, функция «max» может содержать инструкции, которые вычисляют, какое из двух чисел больше. Функция «calculateGrade» может рассчитывать оценку студента. Более детально об этом мы поговорим в следующих уроках.

Совет: ваша основная функция main() должна находится в .cpp файле с таким же именем, как и ваш проект.

Библиотеки и Стандартная библиотека C++

Библиотека — это набор скомпилированного кода (например, функций), который был «упакован» для повторного использования в других программах. С помощью библиотек можно расширить возможности программ. Например, если вы пишете игру, вероятнее всего, вы захотите подключить библиотеку звука или библиотеку графики.

На самом деле, язык C++ не такой уж и большой, а совсем наоборот. Тем не менее, он идет в комплекте со Стандартной библиотекой С++, которая предоставляет дополнительные функциональные возможности для использования. Одна из наиболее часто используемых частей стандартной библиотеки C++ — библиотека iostream, которая содержит функциональные возможности вывода данных на экран и получение данных, вводимых пользователями консоли.

Рассмотрим простую программу

Теперь, когда у вас есть краткое представление о том, что такое инструкции, функции и библиотеки, давайте посмотрим еще раз на программу “Hello, World!”:

Строка 1 — это специальный тип инструкции, который называется директивой препроцессора. Директивы препроцессора сообщают компилятору выполнить определенные задания. В этом случае мы говорим компилятору, что хотели бы добавить содержимое заголовка iostream в нашу программу. Заголовок iostream позволяет нам получить доступ к функциям в библиотеке iostream, что позволит нам выводить текст на экран.

Строка 2 не имеет никакого кода и игнорируется компилятором.

Строка 3 объявляет функцию main(), которая, как вы узнали выше, является обязательной. Каждая программа должна иметь функцию main().

В строках 4 и 7 мы указали компилятору, какие строки являются частью функции main(). Всё, что находится между открывающей фигурной скобкой в строке 4 и закрывающей фигурной скобкой в строке 7 считается частью функции main().

Строка 5 — наша первая инструкция (вы можете сказать, что это инструкция, потому что она заканчивается точкой с запятой) и это операция вывода. std::cout — специальный объект, предназначен для вывода на экран или в консоль. << — этот символ является оператором вывода. std::cout понимает, что всё, что посылается к нему через операторы вывода должно быть на экране. В этом случае, мы увидим текст «Hello, world!».

Строка 6 представляет собой новый тип инструкции, которая называется оператор возврата (return). Когда программа завершает выполнение, функция main() передает значение обратно в операционную систему, которое указывает – успешно ли прошло выполнение программы или нет.

Оператор возврата возвращает значение 0, если «всё прошло хорошо!». Ненулевые числа, как правило, используются для указания, что что-то пошло не так и выполнение программы было прервано. О return мы также поговорим более детально в следующих уроках.

Синтаксис и синтаксические ошибки

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

C++ тоже имеет свой синтаксис: правила о том, как вы должны писать программы, чтобы они были правильными, работоспособными. Когда вы компилируете программу, компилятор отвечает за то, чтобы ваша программа соответствовала правилам синтаксиса языка C++. Если вы нарушили правило, компилятор будет ругаться и выдаст вам ошибку.

Например, вы узнали выше, что все инструкции должны заканчиваться точкой с запятой.

Давайте посмотрим, что произойдет, если мы упустим это правило:

Visual Studio выдаст следующее:

c:\users\apomeranz\documents\visual studio 2013\projects\test1\test1\test1.cpp(6): error C2143: syntax error : missing ';' before 'return'

Допущена синтаксическая ошибка в строке 6: забыли поставить точку с запятой перед return. В этом случае ошибка на самом деле в конце линии 5. Часто компилятор будет определять точную линию, тем не менее, иногда ошибка не заметна до следующей строки.

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

Тест

Следующий тест нужен для усвоения материала, представленного выше.

1) В чем разница между инструкцией и выражением?

2) В чем разница между функцией и библиотекой?

3) Каким символом заканчиваются инструкции в С++?

4) Что такое синтаксическая ошибка?

Ответы

Чтобы посмотреть ответ, нажмите мышкой на нужный номер.

Ответ 1

Инструкция — это «полное предложение», которое говорит компилятору выполнить определенное задание. Выражение же ведёт к вычислению значения. Выражения, как правило, используются внутри инструкций.

Ответ 2

Функция — это набор инструкций, которые последовательно выполняются. Библиотека же — это набор функций, которые можно использовать в разных программах.

Ответ 3

Точкой с запятой (;).

Ответ 4

Синтаксическая ошибка — это ошибка, которую выдаёт компилятор во время компиляции, если программа нарушила правила грамматики языка С++.

Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (56 оценок, среднее: 4,86 из 5)
Загрузка...
Поделиться в:
Подписаться на обновления:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *