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

Программное обеспечение представляет собой набор команд, которые указывают компьютеру, какие действия ему необходимо выполнить.
Стейтменты
Выражение (statement) - это основной вид инструкций в программах. Это самая маленькая независимая единица в языке программирования C++. Выражение в программировании можно сравнить с "предложением" в русском языке - мы используем их для выражения определенной идеи. В C++ мы пишем выражения для выполнения определенной задачи. Все выражения в C++ заканчиваются точкой с запятой.
Существует множество различных типов операторов в языке программирования C++. Давайте рассмотрим наиболее часто используемые из них:
int x ;
x = 5 ;
std :: cout << x ;
Оператор int х используется для объявления переменной х. В программировании каждая переменная занимает определенное количество адресуемых ячеек в памяти в зависимости от её типа данных. Минимальная адресуемая ячейка - байт. Переменная типа int может занимать до 4 байт, что соответствует 4 адресуемым ячейкам памяти. Все переменные должны быть объявлены перед использованием. Более подробно мы рассмотрим работу с переменными в следующих уроках.
Присваивание значения 5 переменной x - это оператор присваивания. В данном случае мы присваиваем переменной x значение 5.
Инструкция std::cout << x; предназначена для вывода (output statement). Она используется для отображения значения переменной x на экране.
Выражения
Также компилятор способен обрабатывать выражения. Выражение (expression) представляет собой математический объект, который формируется для выполнения вычислений и получения соответствующего результата. Например, в математике выражение 2 + 3 равно 5. В языке программирования C++ выражения могут содержать:
различные цифры и числа (к примеру, 2 , 45 );
переменные, обозначенные буквами (например, x, y);
Операторы, включая математические (например, сложение, вычитание);
функциональные возможности.
Выражения могут содержать как отдельные символы - цифры или буквы (например, 2 или а), так и различные комбинации этих символов с операторами (например, 2 + 3, 2 + а, а + b или (2 + а) * (b - 3)). Давайте рассмотрим простой и правильный оператор присваивания а = 2 + 3;. Здесь мы сначала вычисляем сумму чисел 2 + 3, а затем присваиваем результат переменной а.
Функции
В языке программирования C++ стейтменты объединяются в блоки, которые называются функциями. Функция представляет собой последовательность стейтментов, выполняющих определенную задачу. Каждая программа на C++ должна содержать главную функцию main(), с которой начинается выполнение программы. Обычно функции выполняют конкретные задачи, например, функция max() определяет наибольшее из заданных чисел, а функция calculateGrade() вычисляет среднюю оценку студента по определенному предмету.
Рекомендация: Важно помещать функцию main() в файл .cpp с названием, совпадающим с названием проекта. Например, если вы разрабатываете программу под названием "Шахматы", то следует разместить функцию main() в файле chess.cpp.
Библиотеки
Библиотека представляет собой набор скомпилированного кода, таких как функции, которые были упакованы для последующего использования в других программах. Используя библиотеки, можно значительно расширить функциональность программного обеспечения. Например, при разработке игры необходимо подключать библиотеки звука или графики, если нет желания создавать их с нуля.
Язык программирования C++ не такой уж и огромный, как могло бы показаться. Однако он поставляется вместе со стандартной библиотекой C++, которая предоставляет дополнительные возможности. Одним из наиболее часто используемых компонентов стандартной библиотеки C++ является библиотека iostream, которая позволяет выводить данные на экран и обрабатывать ввод от пользователя.
Пример простой программы
После того, как вы понимаете, что такое стейтменты, функции и библиотеки, давайте взглянем на программу "Привет, мир!" еще раз:
#include
int main ( )
{
std :: cout << "Hello, world!" ;
return 0 ;
}
Первая строка: Директива препроцессора - это специальный тип инструкции, который сообщает компилятору о необходимости выполнить определенное действие. В данном случае мы указываем компилятору, что хотим включить содержимое заголовочного файла
Вторая строка: Пространство, которое не учитывается компилятором.
В строках №4 и №7 необходимо указать компилятору область функции main(). Любой код, расположенный между открывающей фигурной скобкой в строке №4 и закрывающей фигурной скобкой в строке №7, будет считаться частью функции main().
Пятая строка: Наш первый оператор (заканчивается точкой с запятой) - оператор вывода. std::cout - это уникальный объект, который позволяет нам отображать информацию на экране. << - это специальный оператор вывода. Любая информация, которую мы передаем в std::cout, отображается на экране. В данном случае мы выводим фразу "Привет, мир!".
Шестая строка: Оператор return возвращается. По завершении работы программы функция main() передает операционной системе значение, указывающее на результат выполнения программы - успешное или неуспешное.
Когда оператор return возвращает ноль, это означает, что всё в порядке! Ненулевые значения, возвращаемые оператором, свидетельствуют о возникновении проблем и прерывании выполнения программы. Мы рассмотрим оператор return более подробно на следующем уроке.
Синтаксис и синтаксические ошибки
Как вы, вероятно, знаете, в русском языке все предложения должны соответствовать грамматическим правилам. Например, каждое предложение должно завершаться точкой. Правила, которые определяют структуру предложений, называются синтаксисом. Если вы пропустили точку и написали два предложения подряд, это считается нарушением синтаксиса русского языка.
Синтаксис языка C++ включает в себя определенные правила написания кода и программ. При компиляции программы компилятор проверяет ее соответствие этим правилам. В случае нарушения правил компилятор выдаст ошибку.
Допустим, рассмотрим, что случится, если мы не добавим точку с запятой в конце выражения:
#include
int main ( )
{
std :: cout << "Hello world!"
return 0 ;
}
Итак, вот что получилось:
E0065: необходимо использовать точку с запятой ";"
C2143: ошибка в синтаксисе: отсутствует ";" перед "}"
В строке №6 была допущена синтаксическая ошибка: пропущена точка с запятой перед оператором return. Однако на самом деле ошибка находится в конце строки №5. Обычно компилятор правильно определяет местоположение ошибки, но бывают случаи, когда ошибка не заметна до начала следующей строки.
При создании программ часто возникают синтаксические ошибки. Однако большинство из них можно легко обнаружить и устранить. Важно помнить, что программа сможет быть успешно скомпилирована и выполнена только в случае отсутствия ошибок.
Тест
Пришло время проверить ваше понимание материала, изученного на этом уроке. Пожалуйста, ответьте на следующие вопросы:
Каково отличие между оператором и выражением?
Каковы отличия между функцией и библиотекой?
Каким образом завершаются операторы в языке программирования C++?
Что представляет собой синтаксическая ошибка?
Решения:
Решение первое
Стейтмент представляет собой "полное предложение", которое информирует компилятор о необходимости выполнения определенной задачи. Выражение всегда возвращает результат (за исключением деления на ноль) и является неотъемлемой частью стейтмента.
Второй вариант ответа
Функция представляет собой набор инструкций, предназначенных для выполнения определенной задачи. Библиотека, в свою очередь, состоит из функций, которые могут быть повторно использованы в других программах.
Третий вариант ответа
Разделительом является точка с запятой (;).
Четвертый вариант ответа
Ошибка синтаксиса - это ошибка, которая указывает на нарушение правил грамматики языка программирования C++.
Comments