реклама на сайте
подробности

 
 
> поместить массив в массив
sergey sva
сообщение Jan 8 2008, 17:52
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923



привет всем.
Сейчас делаю программку для графического дисплея. Символы и буквы хранятся в массиве:
code unsigned char A1[9] = {0x80,0xE0,0x9C,0x13,0x13,0x9C,0xE0,0x80,0x00}; //À
code unsigned char A2[7] = {0x81,0xFF,0x89,0x89,0x89,0x73,0x00}; //Á
code unsigned char A3[7] = {0x81,0xFF,0x89,0x89,0x89,0x76,0x00}; //Â
code unsigned char A4[7] = {0x81,0xFF,0x81,0x01,0x01,0x07,0x00}; //Ã
code unsigned char A5[7] = {0xE0,0x31,0x2F,0x21,0x3F,0xE1,0x00}; //
Было бы не плохо поместить эти массивы в один массив чтобы один элемент соответствовал
одному из этих массивов.

Наподобие такого:

char arrr[5] = {

code unsigned char A1[9] = {0x80,0xE0,0x9C,0x13,0x13,0x9C,0xE0,0x80,0x00}; //À
code unsigned char A2[7] = {0x81,0xFF,0x89,0x89,0x89,0x73,0x00}; //Á
code unsigned char A3[7] = {0x81,0xFF,0x89,0x89,0x89,0x76,0x00}; //Â
code unsigned char A4[7] = {0x81,0xFF,0x81,0x01,0x01,0x07,0x00}; //Ã
code unsigned char A5[7] = {0xE0,0x31,0x2F,0x21,0x3F,0xE1,0x00}; //


};
как это заделать не соображу . подскажите пожалуйста.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SamHaris
сообщение Jan 9 2008, 07:03
Сообщение #2





Группа: Новичок
Сообщений: 13
Регистрация: 11-08-05
Пользователь №: 7 546



В варианте предложенный zltigo
char arrr[][9] = { {
расходуются лишние байты на пустые нули в конце записи, только нужно выбрать ограничение ширины буковки.

В варианте предложенный Сергей Борщ
char* A1 = {
char* arrr[] = {A1,
расходуется память на размере указателя в осносном массиве, но его не удобно хранить в файле, так как смещение постоянно меняется.

rezident предлогает дело, в место нулей в конце, первый байт зарезервировать под размер масива или ширину буковки, что одно и тоже, тогда можно многоточие как за один символ воспринимать, или букву Ы забить.

ЗЫ. если юзается графический дисплей не лучше перейти на отрисовку линии, маштабируемость буковки повыситсчя.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jan 9 2008, 11:16
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(SamHaris @ Jan 9 2008, 09:03) *
В варианте предложенный Сергей Борщ
char* A1 = {
char* arrr[] = {A1,
расходуется память на размере указателя в осносном массиве, но его не удобно хранить в файле, так как смещение постоянно меняется.
Да, память на указатель расходуется. Я же и написал - надо считать, на что уйдет больше памяти - на указатели или заполнение нулями. Еще надо учитываать, что вариант с указателем требует дополнительного времени на чтение указателя. Насчет хранения в файле - не понял. Если фонт подгружаемый, то массив можно сформировать внешними программами какой угодно - хоть с таблицей смещений в начале.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 11:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016