Динамическая память в Free Pascal

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Динамическая память в Free Pascal

Сообщение disputant » 26.01.2013 16:44:07

Добрый день!

Никак не могу сообразить, что не так в Free Pascal (в режиме работы Turbo Pascal) в смысле работы с динамической памятью. Приложенная программа создает двумерный массив как указатель на массив указателей на массивы целых чисел. В Turbo Pascal 6.0 компилируется и работает на ура, а в Free Pascal хоть и компилируется, но вылетает с 201 ошибкой при попытке инициализации элементов первого массива.

Подскажите, в чем я неправ, и как должен выглядеть код, который одинаково компилируем и работоспособен и в Free Pascal, и в Turbo Pascal...

Заранее спасибо!

array.rar
У вас нет необходимых прав для просмотра вложений в этом сообщении.
disputant
незнакомец
 
Сообщения: 1
Зарегистрирован: 26.01.2013 16:32:56

Re: Динамическая память в Free Pascal

Сообщение sign » 26.01.2013 18:05:20

Запустил в лазарусе.
Ошибок нет.
sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53

Re: Динамическая память в Free Pascal

Сообщение Vadim » 27.01.2013 07:38:58

disputant
Ваша программа успешно компилируется и работает. Никакой ошибки 201 нет.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Динамическая память в Free Pascal

Сообщение Максим » 27.01.2013 15:57:03

201 - это ошибка проверки границ диапазона. Я не удивляюсь её наличию, учитывая, что в программе объявлены массивы вида
Код: Выделить всё
TTmas  =array[1..1] of integer;
TTmatr =array[1..1] of Tmas;
Аватара пользователя
Максим
энтузиаст
 
Сообщения: 598
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Рейтинг@Mail.ru