Secondariamente ho una funzione che riceve l'indirizzo di una variabile del tipo struct incriminato. Questa funzione ha il compito di analizzare una stringa e "compilare" i membri della struttura.
Ora il problema è avere un puntatore generico, che riesca a puntare a un membro qualsiasi della struttura e che riesca a modificarlo attraverso un assegnamento.
Ad esempio, ho la struttura:
Codice: Seleziona tutto
struct x {
char *a;
xyz_t *b;
}
Codice: Seleziona tutto
ptr = &x->s;
Codice: Seleziona tutto
*ptr = f()
Codice: Seleziona tutto
x->s = f();
Codice: Seleziona tutto
int *ptr;
ptr = (int *) &x->s;
*ptr = (int) f();
Codice: Seleziona tutto
warning: dereferencing type-punned pointer will break strict-aliasing rules
Diciamo che la mia è soprattuto una curiosità, come ho già detto il programma funziona, ma non sono sicuro di agire nel modo corretto.