|
cosmo
|
|
Проблемы с массивами в С16.08.2010, 09:49. Показов 3055. Ответов 21
Метки нет (Все метки)
Вопрос такой - Я работаю в ТС под ДОС, у меня есть 2-мерный float массив AI[colvo][2], мне нужно в него записать 2х20000 значений, но когда я ставлю colvo больше 7000, он мне говорит, что размер массива слишком велик, и всё тут. Я пробовал выделять память (malloc и т.д.) но у меня не получается использовать её как двумерный массив, только как одномерный.
Вот такая вот беда. Самое смешное, что от этой программы зависит мое пребывание в аспирантуре |
|
| 16.08.2010, 09:49 | |
|
Ответы с готовыми решениями:
21
Проблемы с массивами Проблемы с массивами Основы java. Проблемы с массивами и переменными |
|
|
|
| 09.09.2010, 15:11 | |
|
(Мне нужно 800), а под ВИНДУ не работают ДОСОВСКИЕ команды inport, outport, delay, без которых мне не обойтись. Кто-то посоветовал библиотеки чтения портов под ВИНДУ. А Вы что скажете по этому поводу?
> А я узнал, что под ДОС можно выделить не больше 640Кб памяти Выделить - это как? при помощи malloc? Нет, максимальный размер выделения 65520 байт. Это связано с тем, что под размер выделенной области выделено 2 байта. Вот общий размер памяти доступной программее не более 640 Кб, часть ее занимает ОС, программа и другие данные. Так что при выделении памяти места может не хватить. В этом случае возвращается нулевой указатель. Массивы обычно также не могут превышать 64K. Чтобы описать больший массив, он должен быть статическим и должен быть huge. Для этого нужно включить в его описание слово huge либо компилировать в модели памяти huge (ключ -mh). Так что ваш массив float 2х20000 вполне может работать. Работает даже 2x70000. Пример: #include <stdio.h> #include <alloc.h> float huge AI[70000][2]; float *p1, *p2; void main() { AI[1][1] = 6.345; printf('%5.3f ', AI[1][1]); /* 6.345 */ p1 = (float*)malloc(40000); if(p1) { p1[9999] = 8.221; printf('%5.3f ', p1[9999]); /* 8.221 */ } p2 = (float*)malloc(40000); /* Неудача */ if(p2) { /* Сюда не заходит */ p2[9999] = 7.564; printf('%5.3f ', p2[9999]); } } > (Мне нужно 800) Ваши аппетиты растут на глазах. Если вы хотите работать под DOS, а объем физической памяти позволяет, то вам надо использовать другой компилятор, который сможет использовать расширенную память так, как будто она основная. Таких компиляторов существует много: WATCOM, Zortech (потом он стал Symantec). Есть еще, не помню названий. Тогда не выделяйте, а описывайте как статический массив. Ну об этом я уже писал. Пример: а под ВИНДУ не работают ДОСОВСКИЕ команды inport, outport, delay Это не команды а функции С-библиотеки. Они исключены из библиотек в 32 разрядных компиляторах, но можно пользоваться ассемблерными вставками c командами in, out. Работу с некоторыми портами Windows 2000 разрешает. Я пробовал так работать с динамиком и при помощи портов делал delay. Про работу с другим оборудованием не знаю. Знаю, что ограничения очень жесткие. > Кто-то посоветовал библиотеки чтения портов под ВИНДУ. Наверняка их можно использовать, но можно обращаться и непосредственно.
0
|
|
|
|
|
| 09.09.2010, 15:14 | |
|
Что-то я сырой текст забросил. Мусор в двух местах.
0
|
|
| 09.09.2010, 15:14 | |
|
Проблемы с инетом, не отправляется почта, проблемы со связью с другой организацией
Работа с массивами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|