[an error occurred while processing this directive]
Ну это же не повод останавливаться. Синтаксические ошибки исправить-то не сложно.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Сергей Борщ 17 октября 2006 г. 15:23
В ответ на: Error: request for member `Data' in `(packed_dword_t*)(((byte*)(&buffer)) + 5u)', which is of non-class type `packed_dword_t*' отправлено Rius 17 октября 2006 г. 13:26


#pragma pack (push, 1)
typedef struct {
uint32_t Data;
} packed_dword_t;
#pragma pack (pop)

(*(packed_dword_t *)&Buffer[5]).Data = value;

\ 00000004 144C LDR R4,??Exec_3 ;; Buffer
\ 00000006 E069 LDR R0,[R4, #+0x1C]
\ 00000008 6071 STRB R0,[R4, #+0x5]
\ 0000000A 000A LSR R0,R0,#+0x8
\ 0000000C A071 STRB R0,[R4, #+0x6]
\ 0000000E 000A LSR R0,R0,#+0x8
\ 00000010 E071 STRB R0,[R4, #+0x7]
\ 00000012 000A LSR R0,R0,#+0x8
\ 00000014 2072 STRB R0,[R4, #+0x8]

((packed_dword_t *)&Buffer[5])->Data = value;

\ 00000004 144C LDR R4,??Exec_3 ;; Buffer
\ 00000006 E069 LDR R0,[R4, #+0x1C]
\ 00000008 6071 STRB R0,[R4, #+0x5]
\ 0000000A 000A LSR R0,R0,#+0x8
\ 0000000C A071 STRB R0,[R4, #+0x6]
\ 0000000E 000A LSR R0,R0,#+0x8
\ 00000010 E071 STRB R0,[R4, #+0x7]
\ 00000012 000A LSR R0,R0,#+0x8
\ 00000014 2072 STRB R0,[R4, #+0x8]

Что и требовалось

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание