Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на Delphi

Выпуск № 030
от 03.07.2002, 14:10

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 58
Отправлено ответов: 62
Активность: 106.8 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе]


 Список экспертов, ответы которых опубликованы в данном выпуске

Vladimir
Статус: Опытный
Общий рейтинг: 126.74
Телефон: (08242) 43599 40099 раб 41255 дом
[Подробней >>]
Артём Шегеда
Статус: Профессиональный
Общий рейтинг: 124.29
URL: Пристанище неодинокого программиста
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 56. Доброе время суток, уважаемые эксперты! У меня возникла проблема с чтением файла в динамический масс... (ответов: 2)

Вопросов: 1, ответов: 2


 Вопрос № 56

Доброе время суток, уважаемые эксперты! У меня возникла проблема с чтением файла в динамический массив.:
Type a = record
x:smallint;
y:smallint;
end;
mas=array of a;
Var Mymas:mas;
Затем задаю размер массива с помощью процедуры SetLength. При попытке прочитать файл выдается ошибка I/O error 87 (или 85? простите забыл). Если вместо mas=array of a; написать mas=array[1..16000] of a; то все работает.
Подскажите, пожалуйста, что я делаю не правильно.
Заранее благодарен!
Vitally.



Вопрос отправлен: 30.06.2002, 09:02
Отправитель: Vitally

[Следующий вопрос >>] [Список вопросов]

Отвечает Vladimir

Приветствую Вас, Vitally!
Ты, по-моему, сам ответил на свой вопрос. Не указываешь размер массива, поэтому память под твой массив не выделяется, и когда ты пытаешься обращаться к несуществующей области выдается ошибка ввода-выводы (IO).


Ответ отправлен: 01.07.2002, 08:16
Отправитель: Vladimir


Отвечает Артём Шегеда

Приветствую Вас, Vitally!
В качестве переменной для чтения из файла используй не имя динамического массива mas (который при внимательном изучении массивом не является), а первый элемент из него - mas[0]. Если функции BlockRead передать просто mas, то чтение будет идти в структуру variant, не не в облать памяти, которую ты выделил по SetLength

Приложение:

Ответ отправлен: 01.07.2002, 14:36
Отправитель: Артём Шегеда



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (48)
C / C++ (33)
Perl (9)
Delphi (16)
Pascal (26)
Basic / VBA (11)
Java / JavaScript (6)
PHP (7)
MySQL / MSSQL (8)
Пользователю
Windows 95/98/Me (46)
Windows NT/2000/XP (36)
"Железо" (41)
Поиск информации (21)
Администратору
Windows NT/2000/XP (19)
Linux / Unix (14)
Юристу
Гражданское право (7)
Семейное право (4)
Трудовое право (6)
КоАП (3)

Отправить вопрос всем экспертам выбранной рассылки.




be number one Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное