Top.Mail.Ru
Уведомления
Очистить все

[Решено] Перенести данные из структуры в массив.

print_info
(@print_info)
New Member

Всем привет, у меня новый вопрос)

У меня есть структура с переменными, которые содержат флаги для 2-х устройств:

struct Flags
{
    uint8_t status[2];
    uint8_t rxFlags[2];
    uint8_t txFlags[2];
}

Можно ли поместить эти три массива в один глобальный массив uint8_t globalFlags[6]? Понимаю, что можно перебрать все поля структуры и скопировать. Но если полей будет не 3, а 10, тогда уже напряжно этот способ выглядит...

Спасибо!

Цитата
Topic starter Размещено : 23.06.2021 15:24
Тэги темы
Aveal
(@aveal)
Illustrious Member Admin
От: @print_info

Всем привет, у меня новый вопрос)

У меня есть структура с переменными, которые содержат флаги для 2-х устройств:

struct Flags
{
    uint8_t status[2];
    uint8_t rxFlags[2];
    uint8_t txFlags[2];
}

Можно ли поместить эти три массива в один глобальный массив uint8_t globalFlags[6]? Понимаю, что можно перебрать все поля структуры и скопировать. Но если полей будет не 3, а 10, тогда уже напряжно этот способ выглядит...

Спасибо!

Например так:

uint8_t globalFlags[6];
struct Flags flags;

// .............

// Copy data
memcpy(globalFlags, &flags, sizeof(flags));
ОтветитьЦитата
Размещено : 23.06.2021 16:06
print_info
(@print_info)
New Member

Благодарю!

ОтветитьЦитата
Topic starter Размещено : 28.06.2021 11:32
Поделиться: