Top.Mail.Ru
Ответы

Помогите с Pascal, для чего нужны константы ?

Для чего нужны константы в Паскале, почему нельзя использовать обычные переменные ?
(подобный вопрос уже был на маил ру, но что-то ответ меня как-то не очень просветил)

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Искусственный Интеллект
7лет

Замечу еще, что значение константы известно уже на этапе компиляции, так что, например, можно объявить статический массив с длиной, заданной константой, а с длиной, заданной переменной - нельзя.
Правда, в древнем Turbo Pascal, который еще почему-то где-то учат, были и так называемые в нем типизированные константы, которые по сути вовсе не были константами, а были просто инициализированными переменными.

Аватар пользователя
Высший разум
7лет

Для чего нужны константы в Паскале, почему нельзя использовать обычные переменные?
Переменные предполагают хранение, а значит скорее всего располагаются в памяти. Константу можно не грузить из памяти (вид из ассемблера), а сразу подставить в нужное место, что увеличивает скорость программы. Константу не изменить, что гарантирует ее постоянное значение и защиту от дурака пользователя. Константа имеет какое-то имя, так что пишем PI и не надо помнить, что оно 3.1415926 и тд знаков, да читается короче и понятней в коде.
Использовать переменные можно, так как если в результате получаем одно и тоже, то почему бы и нет.

Аватар пользователя
Искусственный Интеллект
7лет

Это вопрос стиля. Если ты описываешь что-то как константу, тем самым ты говоришь, что это значение не будет изменяться в процессе выполнения программы. В классическом паскале типизированные константы можно было использовать как инициализированные переменные, но опять же - это плохой стиль.

Аватар пользователя
Просветленный
7лет

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

Аватар пользователя
Мастер
7лет

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