Doppelzeiger übernimmt I haben einen doppelten Zeiger auf eine Funktion zu übergebenHindurchleiten ein Zeigerelementes in der Struktur, die ist Mitglied einer anderen Struktur zu einer Funktion, die
struct Animal{
uint_32 *count;
}
struct forest{
struct Animal elephant;
}
void pass(uint32 **count){
printf("Count:%d\n",**count);
}
int main(){
struct forest *gir;
gir=(struct forest*)malloc(sizeof(struct forest));
gir.elephant.count=(int*)malloc(sizeof(uint32_t));
pass(_______); //have to pass count value
return 0;
}
I verschiedene Kombinationen versucht, aber nicht sicher, wie zu handhaben dieser Fall.
kindlynote, habe ich es direkt auf SO geschrieben, da die tatsächlichen Code Aufstellen wäre unnötig zu verkomplizieren, da ich nur für bestimmte Lösung suchen werde.
wie [das] (http://ideone.com/cCVrIU) – BLUEPIXY
[Bitte beachten Sie, diese Diskussion auf, warum nicht den Rückgabewert von 'malloc zu werfen () 'und Familie in' C'.] (http://stackoverflow.com/q/605845/2173917). –