/ / Membro do Struct point em outro membro struct - c, ponteiros, struct

Ponto de membro de estrutura em outro membro de struct - c, ponteiros, struct

é possível para o membro struct apontar para outro membro de struct diferente? Eu quero fazer algo como uma tabela de referência.

struct a {
int a;
int b;
};

struct b {
* struct a.b;
};

Um palpite de que isso não é possível, já que não há memória alocada, mas estou aberto a sugestões.

Respostas:

2 para resposta № 1

Claro, basta usar um ponteiro

struct b
{
int* p ; //or an array of pointers if you need a table
} ;

struct a sa = { 1 , 2 } ;
struct b sb = { &sa.a } ;

printf("%dn" , sb.p ) ;

sb.p = &sa.b ;
printf("%dn" , sb.p ) ;