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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 10.03.2009, 16:09   #11
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
var a:array[1..10000] of string[254]
Что то не работает
Странная ошибка:
Если пишу:
Код:
Strings : array [1..254] of String
То работает.

Если пишу:
Код:
Strings : array [1..255] of String
Пишет : Error 96: Too many variables.

Если пишу:
Код:
Strings : array [1..256(и больше 256)] of String
Пишет : Error 22: Structure too large.
Вадим Буренков вне форума
Старый 10.03.2009, 16:50   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А-а-а... Я вспомнил, мы от таких проблем в колледже кажись динамическим выбором памяти (кучами) лечились... Правда не помню какими.

Вообще ты можеш обьяснить зачем тебе загружать все строки в память?
I'm learning to live...

Последний раз редактировалось Stilet; 10.03.2009 в 16:57.
Stilet вне форума
Старый 10.03.2009, 17:36   #13
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Цитата:
Сообщение от Вадим Буренков Посмотреть сообщение
Что то не работает
Странная ошибка:
Если пишу:
Код:
Strings : array [1..254] of String
То работает.

Если пишу:
Код:
Strings : array [1..255] of String
Пишет : Error 96: Too many variables.
Значит, все переменные не влезают в сегмент данных. 255 * 256 — это в один сегмент ещё влезает, но не влезает, учитывая остальные переменные.

Цитата:
Сообщение от Вадим Буренков Посмотреть сообщение
Если пишу:
Код:
Strings : array [1..256(и больше 256)] of String
Пишет : Error 22: Structure too large.
А теперь сама структура не влезает в сегмент (65536 = 255 * 255). Должно быть хоть на байт, но меньше.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума
Старый 10.03.2009, 19:05   #14
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
Вообще ты можеш обьяснить зачем тебе загружать все строки в память?
Теоретически можно обойтись и без этого, но это усложнит и без этого сложный код.Программе придется постоянно
загружать ->проверять->выгружать->загружать ->проверять->выгружать данные, что не является лучшим выходом.А что ты там говоришь про:'динамический выбор памяти'....
Вадим Буренков вне форума
Старый 10.03.2009, 19:33   #15
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Рискну предложить не делать и без того сложный код на Паскале.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума
Старый 11.03.2009, 17:38   #16
Bayazet
Форумчанин
 
Регистрация: 08.12.2008
Сообщений: 156
По умолчанию

OCTAGRAM прав
я не помню, а в паскале разрешено использовать динамические массивы?

Код:
mas : Array of string;
......
i := 1;
While not eof(YourFile) do
begin
  SetLength(mas, i);
  Readln(YourFile, mas[i-1]);
  i := i+1;
end;
Bayazet вне форума
Старый 11.03.2009, 20:04   #17
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

В Турбо — ещё нет. Но даже если это сделать, получится увеличить лишь до 256 строк. Хотя... если использовать не массив строк, а массив указателей. Массив PChar или массив указателей на строки, можно увеличить вместительность раз в 10, т. е. 640КБайт.

Какой размер файла предполагается? Если вся работа сосредоточена вокруг одного файла, и этот файл меньше 65Кбайт, его можно загнать в один сегмент, сплошным блоком данных, а затем вместо строк использовать индексы старт-стоп относительно начала файла. То есть, если файл содержит текст:
Код:
Первая строка
Вторая строка
Последняя строка
, то строки будут иметь индексы: 0-13, 15-28, 30-46. В компиляторах и других утилитах для работы с исходными текстами такой представление часто используется, чтобы указать расположение строки с ошибкой.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума
Старый 11.03.2009, 20:16   #18
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Bayazet
mas : Array of string;
Разумеется - НЕТ!


Вадим Буренков, а чем Вызвано Ваше желание работать именно в DOS Паскале?! Это учебное задание?
Дело в том, что Дос уже давно уже умер. R.I.P.
Serge_Bliznykov вне форума
Старый 11.03.2009, 20:45   #19
Megavvoltt
Новичок
Джуниор
 
Регистрация: 11.03.2009
Сообщений: 1
По умолчанию

Я думал на нем уже никто не програмирует.
Megavvoltt вне форума
Старый 12.03.2009, 16:23   #20
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
Это учебное задание?
Да.

Цитата:
Я думал на нем уже никто не програмирует.
Если это было бы так, то тема 'Паскаль' давно бы умерла.
Конечно, на нем уже не пишутся серьезные программы, но он широко используется для обучения программированию.
Вадим Буренков вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
здравствуйте, у меня проблема: мне надо решить задачки в паскале, а то допуска не бедет... =|винтик|= Паскаль, Turbo Pascal, PascalABC.NET 5 20.01.2009 18:09
Проблема с графикой в Паскале... bygoga Паскаль, Turbo Pascal, PascalABC.NET 3 20.12.2008 09:55
Срочно! Помогите построить СДНФ на Паскале число переменных задает пользователь stscolt Помощь студентам 1 21.04.2008 22:20
Проблема с масивом в Паскале SeRhy Помощь студентам 2 15.11.2007 20:54