|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.11.2011, 21:32 | #1 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 33
|
массив 150 Kb дод DOS ?
Приветсвую!
Кто нибудьрешал задачу создания одномерного массива char 150 КБ? Причём всё это требуется под управлением MS-DOS. Я уже знаю: нельзя создать одномерный массив больше 64 КБ (длина сегмента), поэтому единственный способ - это создать динамический массив при помощи функции new или farcalloc. Для моих целей подойдёт и двухмерный массив размером char 320 * 320. Пытаюсь создать его так: Код:
Под DOS_ом ведь 640 Kb доступно, за минусом памяти требуемой для работы borland c 3.1 всёравно должно оставаться достаточно. Я уже давно понял, если программа не работает, значит это не с ней что то нетак, а я чегото непонимаю. Прошу поделиться опытом по данному вопросу, если кто сталкивался. |
24.11.2011, 21:54 | #2 |
Старожил
Регистрация: 19.08.2009
Сообщений: 2,119
|
somwan
1. объявляй указатель явно как huge 2. попробуй заюзать halloc 3. в зависимости от наличия в системе драйверов himem.sys / emm386.exe можно использовать xms/ems память 4. (самый правильный вариант) выкинуть поделие борланда нах, взять watcom c++, работающий в защищенном режиме под экстендер dos4/gw и радоваться.
А вы почему со мной не соглашаетесь, у вас что, импотенция? (c) ACE Valery
|
24.11.2011, 22:13 | #3 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 33
|
Huge суть дела не изменило. вместо первичного указанного количество выделенно 58422 байта (на 1284 байта больше ) функции halloc в борланде 3.1 нет. Менять компилятор пугает! Т.к. этот я уже довольно хорошо знаю, и в самый разгар проэкра тоже не очень приятно. Пытяюсь дальше. Уже выяснил, что в системе свободно 320 Кб. (с копейками) рсталось только найти способ их использования в своих интересах.
|
24.11.2011, 22:46 | #4 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 33
|
Поздравте меня, всёж я разобрался! Прблема не в способе выделения , а в том, что я запускал программу из под borland c 3.1 (т.е. run>>run). В голову пришла светлая мысль я закрыл BC и запустил созданную там программу из под доса. Всё прекрасно работает! Даже без huge. Выделяет МНОГО, больее чем достаточно. (620 Кб. больше не пробовал) Всем спасибо.
|
25.11.2011, 14:37 | #5 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
Со мной можно встретиться на www.clipper.borda.ru
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
софт с авторизацией данных. 150$ | 8check | Фриланс | 14 | 16.06.2010 02:36 |
Разработать программу для заполнения типизированного файла целыми числами в интервале [-150; 150]. Поменя | Pan_rust | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 24.05.2010 23:03 |