Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2020, 11:55   #1
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
Счастье Ошибка: Access violation at address 00409FD2 in module 'Project1.exe'. Write of address 00415BA8.

Здравствуйте!
Подскажите, пожалуйста, почему когда идет заполнение колонок из массива, выходит ошибка: Access violation at address 00409FD2 in module 'Project1.exe'. Write of address 00415BA8.
Код:
procedure TForm1.FormCreate(Sender: TObject);
const headers: array[0..4] of string = ('№',
                                   'тур',
                                   'взр.',
                                   'дет.',
                                   'стоимость до');
var
 I: Integer;
begin
     for I := 0 to Length(headers) do
     begin
       StringGrid1.Cells[I, 0]:=headers[I];
     end;

end;
Женя32 вне форума Ответить с цитированием
Старый 22.05.2020, 13:05   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Ну если, скажем, Length(headers) будет хотя бы 100, то что такое будет headers[99], если всего лишь headers: array[0..4] ?
digitalis вне форума Ответить с цитированием
Старый 22.05.2020, 13:10   #3
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
По умолчанию

digitalis, спасибо!
Женя32 вне форума Ответить с цитированием
Старый 22.05.2020, 22:55   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Тщательнее надо, тёзка !
digitalis вне форума Ответить с цитированием
Старый 23.05.2020, 03:12   #5
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Ну если, скажем, Length(headers) будет хотя бы 100, то что такое будет headers[99], если всего лишь headers: array[0..4] ?
Если это подсказка, то я бы её не понял бы никогда.
northener вне форума Ответить с цитированием
Старый 23.05.2020, 11:28   #6
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Что же тут понимать - индекс массива принимает немыслимые значения, отсюда и Access violation
digitalis вне форума Ответить с цитированием
Старый 23.05.2020, 13:14   #7
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Что же тут понимать - индекс массива принимает немыслимые значения, отсюда и Access violation
Почему немыслимые? Всего лишь 0..5
northener вне форума Ответить с цитированием
Старый 23.05.2020, 21:43   #8
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,536
По умолчанию

Да, действительно. Я никогда не применял Lenght к массивам, только к строкам, вот потому так порешил... Нужно срочно расширять кругозор.
Тогда, возможно, конфликт с размером StringGrid1, не описанном в посте.
Женя32, sorry, кажется, в моем посте проявился Иван Сусанин.
-----------------------------
"Ошибки надо не признавать, их наджо смывать! Кровью!"

Последний раз редактировалось digitalis; 23.05.2020 в 21:46.
digitalis вне форума Ответить с цитированием
Старый 23.05.2020, 22:21   #9
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Тогда, возможно, конфликт с размером StringGrid1
Да нет. Всего лишь нужно было цикл делать до Length(headers) -1
northener вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка: "Access violation at address 00454F01 in module 'Project1.exe'. Read of address 00000000. Arktos1995 Общие вопросы Delphi 5 12.12.2012 22:33
Ошибка: "Access violation at address 0045E503 in module 'Project1.exe'. Read of address 00316777. Katexxxsa Общие вопросы Delphi 1 03.10.2011 23:16
Ошибка "Access violation at address 004043A8 in module 'Project1.exe'. Read of address 00FF5A53." ms.Karishka Общие вопросы Delphi 6 14.04.2011 22:18
Access violation at address 00478D0E in module 'Project1.exe'. Write of address 00000000 fondreykus-1 Общие вопросы Delphi 5 27.01.2010 14:25
Ошибка: "Access violation at address 00454F01 in module 'Project1.exe'. Read of address 00000000. Fen1x Общие вопросы Delphi 8 13.10.2007 20:13