|
|
|
Адресация элементов массива, Не по индексу, а по имени/метке и т.п. |
|
|
|
Apr 19 2017, 06:55
|
Гуру
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143
|
Цитата(bingo @ Apr 19 2017, 06:01) Массив и структуры в нем определяются API откомпилированной библиотеки, поэтому сильно изменять (чтобы появились у структур именованные поля) не могу! и "Такой подход с union обсуждался. Но, в случае изменений структуры массива требуется корректировка и union Т.е в двух местах!" Дак меняется тип структуры или нет? Вы определитесь сначала с исходными требованиями для задачи..
Сообщение отредактировал mantech - Apr 19 2017, 06:57
|
|
|
|
|
Apr 19 2017, 08:56
|
Частый гость
Группа: Свой
Сообщений: 88
Регистрация: 9-04-12
Пользователь №: 71 256
|
Цитата(ViKo @ Apr 19 2017, 10:08) Дык и обращайтесь к элементу структуры, зачем высасывать проблему из пальца? Ответ прост. Я выше писал. Вызов библиотечной функции подразумевает параметр в виде массива байт uint8. Но сами содержимое этого массива (определяется спецификацией пакета) - это несколько структур данных, которые я сейчас при отладке не редко переставляю/изменяю. Соответственно меняется цифровой индекс нужных мне байт и приходится вручную пересчитывать новое положение элемента массива. В прототипе функции - это только массив байт без объявления структур с именованными полями!
Сообщение отредактировал bingo - Apr 19 2017, 08:59
|
|
|
|
|
Apr 19 2017, 10:40
|
Местный
Группа: Свой
Сообщений: 351
Регистрация: 11-09-05
Из: Харьков
Пользователь №: 8 458
|
Цитата(bingo @ Apr 19 2017, 11:56) Вызов библиотечной функции подразумевает параметр в виде массива байт uint8. Но сами содержимое этого массива (определяется спецификацией пакета) - это несколько структур данных, которые я сейчас при отладке не редко переставляю/изменяю. Соответственно меняется цифровой индекс нужных мне байт и приходится вручную пересчитывать новое положение элемента массива. Цитата(Сергей Борщ @ Apr 19 2017, 12:50) Сделайте функцию-обертку, которая принимает указатель на структуру, приводит его к указателю на байты и вызывает библиотечную функцию. Лучшее, что здесь подсказали.
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|