Перейти к содержанию

    

Массив структур в VisualDSP 4.5

Добрый вечер! Проблема следующая. Компилятор VisualDSP 4.5 массивы структур в памяти хранит не подряд, а с какими-то промежутками.

 

Т.е. получается если я делаю так:

 

struct {int a; int b} _mystruct[3];

 

то я ожидаю что в памяти, структуры будут лежать вот так: {a,b},{a,b},{a,b}, т.е. подряд с линейным увеличением адреса. А получается что структуры лежат вот так: {a,b}{какая-то дырка в памяти}{a, b}{другая дырка}, {a,b}. Размер структуры 32 байта. а он между структурами делает дырки в памяти по 400 байт. К элементам массива то обращаться можно, но DMA не заведешь, потому как ему непрерывный кусок памяти надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я обычно так делал, все работало

 

struct _mystruct

{

int a;

int b ;

} mystruct ;

 

mystruct mst[3] ;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация