Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/29: Рейтинг темы: голосов - 29, средняя оценка - 4.52
ityrom

вопрос по страктам

24.06.2010, 14:19. Показов 5543. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
ковыряюсь тут в однм коде:

tTxPacket tx_packet;

tRxPacket rx_packet;

типы tx_packet и rx_packet в свою очередь установлены как стракты

typedef struct {

UINT8 u8MaxDataLength;

UINT8 u8DataLength;

UINT8 *pu8Data;

UINT8 u8Status;

} tRxPacket;

typedef struct {

UINT8 u8DataLength;

UINT8 *pu8Data;

} tTxPacket;

Есть еще такой стракт

typedef struct

{

unsykned int netnum;

byte rxstrength;

byte sommomd;

byte zdata[ZSTAR_MAX_DATASIZE];

} tZSTAR;

Также у меня есть такое в начале файла....

#define Z(x) ((tZSTAR *)((x)->pu8Data));

И теперь самое интересное.....

В одной из функций написано то что компайлер и я не понимаю

Z(&tx_packet)->sommomd = ZSTAR_CONNECT;

П.с ZSTAR_CONNECT -это

#define ZSTAR_CONNECT c

вопрос:
то что выделенно красным...что это?
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.06.2010, 14:19
Ответы с готовыми решениями:

Вопрос по SetParent (поэтому, наверное, это вопрос к NickStaves)
Есть набор форм, назовём их 'интерфейсными'. Есть отдельная форма, назовём её 'хранилищем'. Сама по себе она нигде не используется: лишь...

VBulletin [ВОПРОС]: Меню и вопрос при регистрации
Помогите пожалуйста. У меня vbulletin 4.0.7 и после установки в верхнем меню есть лишняя навигация. Например: Главная Форум Blogs ...

Вопрос о картинках, вопрос о формулах
Всем доброго времени суток! Как обычно глупые вопросы... Вопрос первый, с сайта копируется информация (картинки + циферки ;-)) Так...

4
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 727
24.06.2010, 14:34
Цитата Сообщение от ityrom
#define Z(x) ((tZSTAR *)((x)->pu8Data));

Z(&tx_packet)->sommomd = ZSTAR_CONNECT;

#define ZSTAR_CONNECT c
Z(x) - макрос с параметром. При компиляции все обращения типа Z(x) заменяются на ((tZSTAR *)((x)->pu8Data)); При этом x заменяется на то, что стоит в скобках при обращении к макросу.
В следующей строчке как раз идет обращение к нему. В него передается указатель на структуру, описывающую (если я правильно понял) пакет для отправки. В самом макросе из этой структуры берется адрес буфера, приводится к типу указателя на tZSTAR. И дальше идет обращение к полю sommomd этой структуры - в него записывается 0x63 или c.

В результате, если раскрыть этот макрос получится вот такое:
((tZSTAR *)((&tx_packet)->pu8Data))->sommomd=c;

непонятно только при чем здесь экзотические контроллеры :)
0
ityrom
24.06.2010, 15:03
это код контроллера фрискейл, хотя эта тема контроллера не касается, а рубрики программирования тут нет...я думал куда сбросить тему сюда или в детские вопросы, решил сюда)))
спасибо)
0 / 0 / 0
Регистрация: 18.10.2006
Сообщений: 547
24.06.2010, 16:01
как то плохо читаются слова стракты,фрискейл, компайлер, прям сразу и не поймешь о чем речь...
0
0 / 0 / 0
Регистрация: 02.02.2010
Сообщений: 1,142
24.06.2010, 16:23
Зато правильное произношение, лучше чем "структ":) Но просто "структура" ага, как-то понятнее.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.06.2010, 16:23
Помогаю со студенческими работами здесь

Вопрос по массивав, "институтский" вопрос.
Готовлюсь к летней сессии по программированию. С++ Есть такая вот задачка (привожу как есть) В документации подобного не...

Вопрос по do while
У меня возникла такая проблема, вывожу в цикле такой код: <? do { printf (" <tr> ...

вопрос по ИЦ
помогает ли ИЦ в продвижении по какому-либо запросу? цитата из аськи: кстати цитирование сильно помогает, заметь новостные порталы,...

вопрос
уважаемые форумчане!! у меня вопрос.. удадлил игру, а музыка из игры продолжает играть.. запускаю проигрыватель- он её не ...

Вопрос по нч
Есть один сайт, хочу очень поднять его по одному нч. Сайт не новый создан в 2007 году. В месяц по нему где-то 200-300 запросов всего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru