Приветствую.
struct _MyStruct
{
int val1;
int val2;
int val3;
};
typedef struct _MyStruct MyStruct;
main()
{
MyStruct *mst;
int i;
mst=malloc(sizeof(MyStruct));
mst->val1=1;
mst->val2=2;
mst->val3=3;
i=mst->val3;
}
возможно ли к полю val3 обратиться не i=mst->val3, а как нибудь по положению
поля в структуре (что нибудь типа i=&(mst+8)), причем +8 тоже както нужно вычислить.
Попробую по другому обьяснить проблему:
Функция работает со значением в каком либо поле структуры, причем поля могут быть различные
(либо val1, либо val2, либо val3, ...) возможно ли указать этой функции с каким полем работать
но не так:
if(name_field==1)i=mst->val1;
else if(name_field==2)i=mst->val2;
else i=mst->val3;
т.к. полей в структуре очень много и они имеют различные типы.
Ответ на:
комментарий
от Begemoth
Ответ на:
комментарий
от CL
Ответ на:
комментарий
от Begemoth
Ответ на:
комментарий
от CL
Ответ на:
комментарий
от cvv
Ответ на:
комментарий
от loge
Ответ на:
комментарий
от cvv
Ответ на:
комментарий
от loge
Ответ на:
комментарий
от Begemoth
Ответ на:
комментарий
от k_andy
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Инициализация константных полей структур (2015)
- Форум Как скрыть поля структуры в интерфейсе? (2016)
- Форум Размер структуры с вложенным массивом структур (2013)
- Форум Чем чревата прямая инкапусляция структур в си? (2016)
- Форум Объект в качестве поля структуры. (2012)
- Форум [C] Связные списки, не компилится (2007)
- Форум std::vector.emplace_back и структура с инициализированными полями (2023)
- Форум Написание функции, принимающей структуры разного типа (2013)
- Форум [СИ] структуры, массивы и sizeof(). (2010)
- Форум malloc проблема (2008)