Kom er even niet uit
Maar het resulteert wel in een SIGSEGV, stoort me een beetje..
Stel men neme een struct:
Die word geinitialiseerd als volgt (array van 3):
Vervolgens de pointer naar een array: (*c word niet gebruikt als string!)
So far so good. Maar als ik de variabelen in *c vervolgens wil uitlezen, mayhem..
Ik verwacht zelf dat de inhoud als volgt uit te lezen valt:
Maar dat gaat dus niet goed. Nou dacht ik dat ik mijn pointers er inmiddels wel door had.. Uiteindelijk lukt het wel uit te lezen via &eStruct[0].c[0] maar of dat nou de bedoeling is ? Voor zover ik in mijn boek of op google kan terugvinden niet. Wie geeft mij een pointer
in the right direction ?
Stel men neme een struct:
code:
1
2
3
| struct exampleStruct{
unsigned char *c;
} |
Die word geinitialiseerd als volgt (array van 3):
code:
1
| struct exampleStruct * eStruct = calloc(3, sizeof(struct exampleStruct)); |
Vervolgens de pointer naar een array: (*c word niet gebruikt als string!)
code:
1
| eStruct[0].c = calloc(3, sizeof( unsigned char ); |
So far so good. Maar als ik de variabelen in *c vervolgens wil uitlezen, mayhem..
Ik verwacht zelf dat de inhoud als volgt uit te lezen valt:
code:
1
| eStruct[0].c[0] |
Maar dat gaat dus niet goed. Nou dacht ik dat ik mijn pointers er inmiddels wel door had.. Uiteindelijk lukt het wel uit te lezen via &eStruct[0].c[0] maar of dat nou de bedoeling is ? Voor zover ik in mijn boek of op google kan terugvinden niet. Wie geeft mij een pointer
[ Voor 3% gewijzigd door BastiaanCM op 19-12-2013 17:00 ]