Читать «Полный справочник по С++» онлайн - страница 9
Герберт Шилдт
■м|й|Н| Концепция обособления широко применяется в языке C++. В частности, каж-I дая часть программы, написанной на этом языке, может четко управлять I доступом к ней из других модулей.
Структурные языки предоставляют широкий спектр возможностей. Они допускают использование вложенных циклов, например while, do-while и for.
В структурированных языках использование оператора goto либо запрещено, либо нежелательно и не включается в набор основных средств управления потоком выполнения программы (как это принято в стандарте языка BASIC и в традиционном языке FORTRAN). Структурированные языки позволяют размешать несколько инструкций программы в одной строке и не ограничивают программиста жесткими полями для ввода команд (как это делалось в старых версиях языка FORTRAN).
Рассмотрим несколько примеров структурированных и неструктурированных языков (табл. 1.2).
Таблица 1.2. Структурированные и неструктурированные языки программирования | |
---|---|
Неструктурированные | Структурированные |
FORTRAN | Pascal |
BASIC | Ada |
COBOL | Java |
C# | |
C++ | |
С | |
Modula-2 |
Структурированные языки считаются более современными. В настоящее время неструктурирован ность является признаком устаревших языков программирования, и лишь немногие программисты выбирают их для создания серьезных приложений.
Новые версии старых языков программирования (например Visual Basic) включают элементы структурированости. И все же врожденные недостатки этих языков вряд пи будут до конца исправлены, поскольку структурированность не закладывалась в их основу с самого начала.
На заметку
Основным структурным элементом языка С является функция. Именно функции служат строительными блоками, из которых создается программа. Они позволяют разбивать программу на модули, решающие отдельные задачи. Создав функцию, можно не беспокоиться о побочных эффектах, которые она вызовет в других частях программы. Способность создавать отдельные функции чрезвычайна важна при реализации больших проектов, в которых один фрагмент кода не должен взаимодействовать с другими частями программы непредсказуемым образом.
Другой способ структурирования и обособления программы, написанной на языке С, — блоки. Блок (code block) — это группа операторов, логически связанных между собой, и рассматриваемых как единое целое. В языке С блок можно создать с помощью фигурных скобок, ограничивающих последовательность операторов. Вот типичный пример блока.
if (х < 10) {
printf("Слишком мало, попробуйте снова.\п"; scanf("%d", &х);
}
Два оператора, расположенных внутри фигурных скобок, выполняются, если значение переменной х меньше 10. Эти два оператора вместе с фигурными скобками образуют блок. Блок — это логическая единица, поскольку оба оператора обязательно должны быть выполнены. Блоки позволяют ясно, элегантно и эффективно реализовывать различные алгоритмы. Более того, они помогают программисту лучше выразить природу алгоритма.