Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

В чем различия между модульным, процедурным и структурным программированием? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Отображение файла в память, поиск и замена последовательности байт http://www.cyberforum.ru/cpp-beginners/thread1215029.html
В общем, задача такая: спроецировать файл в память, найти последовательность байт, заменить её и записать изменения в файл. Вот, что я сам попробовал нацарапать: int _tmain(int argc, _TCHAR* argv)...
C++ Алгоритм с Паскаля на С++ Очень прошу помощи. Никак не могу перевести с паскаля на С алгоритм. На Паскале вычисляет все отлично, все тесты проходит. На С++ заваливается через тест... x:=sekt; repeat v:=(a div k) mod n; if... http://www.cyberforum.ru/cpp-beginners/thread1215002.html
C++ Каким образом переменные, описанные в одном файле, могут быть доступны другому файлу?
помогите пожалуйста ответить на вопрос 1. Каким образом переменные, описанные в одном файле, могут быть доступны другому файлу?
C++ Конструктор с двоеточием
Новичок. Объясните, пожалуйста, что за параметры в конструкторе после скобочек за двоеточием? HelloWorld::HelloWorld() :_targets(NULL), _projectiles(NULL) { }
C++ Написать группу классов "мобильный телефон" http://www.cyberforum.ru/cpp-beginners/thread1214962.html
Создать класс MICROCHIP, имеющий объем памяти в Гб (v - целое). Определить конструкторы. Создать класс MOBITELEFON содержащий объект m класса MICROCHIP. Дополнительно у этого класса есть название...
C++ С чего начать написание программы для 3D моделирования всем доброго времени суток=) я недавно загорелся идеей написать программку для 3D моделирования, но совсем не знаю с чего же мне начать... может есть у кого нибудь мудрый совет или интересная книжка... подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3049 / 1694 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
23.06.2014, 23:32
Цитата Сообщение от luigration Посмотреть сообщение
Объясните, пожалуйста, в чем различия между модульным, процедурным и структурным программированием?
Ну, согласно Страуструпу, процедурное программирование – это использование в программе подпрограмм. В Паскале это процедуры и функции, в Си – только функции. Как видно из форума, у студентов-сишников с его освоением проблемы – фигачат весь код в main, что для человека, изучавшего Паскаль, выглядит довольно дико. В других языках, например в Паскале, подпрограмма может делать все, что делает программа, в том числе объявлять свои подпрограммы. В Си этого нет, и в функции уже невозможно объявить подфункцию, все функции глобальные.
Структурное программирование – это использование вместо goto готовых языковых структур – ветвлений и циклов. В Си это for, while, do while. if else, switch. Блок-схемы и были нужны, чтобы, когда этих структур в языке не было, рисовать их на бумажке, а потом реализовывать с помощью макаронного программирования, вписывая goto к номеру строки такой-то. С появлением структурных языков надобность в блок-схемах отпала, поэтому тоже довольно странно видеть как люди с ними возятся.
Модульное программирование – это разбиение программы на блоки функций (модули), каждый из которых выполняет свою задачу, и которые настолько независимы, что каждому модулю достаточно знать только интерфейсы других (т.е. имена функций модуля), а реализация этих функций его не интересует. В C++ это пространства имен на логическом уровне и файлы на физическом, где на логическом уровне интерфейс модуля (объявления функций) помещаются в пространстве имен модуля, а реализация модуля (реализации функций) – за пределами этого пространства имен. На физическом уровне интерфейсу модуля соответствует заголовочный файл модуля, а реализации – файл реализации модуля.
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru