|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Aug 2009
Messaggi: 119
|
[c] doppio puntatore = array di puntatori
Salve a tutti, nn riesco a capire come funziona (o far funzionare) il fatto che a un doppio puntatore possa essere assegnato un array di puntatori. La situazione e' questa:
Ho una struttura definita come list_t. Io voglio creare una funzione per definire in un'altra struttura hash_t un array di puntatori a list_t grande size, dove size e' un parametro della funzione. IMPORTANTE La list_t manipola dati di tipo void * mi viene da scrivere una cosa del genere: Codice:
typdef struct { list_t **pun; ... }hash_t; hash_t * funz(... int size, ...) { hash_t * tmpH; list_t ** tmpL; tmpH = malloc(sizeof(hash_t)); ... tmpL = calloc(size, sizeof(list_t *)); tmpH->pun = tmpL; return tmpH; } Il problema e' che io vorrei accedere a pun come se fosse un array, quindi con la notazione pun[i], ma anche se il compilatore me lo fa' fare nn accedo ai membri. Ho provato a scrivere list_t *tmpL[size]; ma nn so' come effettuare la malloc... Penso che il compilatore nn faccia storie perche' i dati dentro list_t sono void *. Nn so' come risolvere il problema. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Mi tradurresti questa affermazione?
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jul 2009
Città: Varès
Messaggi: 658
|
ma in pun[i] ci sono degli indirizzi di memoria...
cosa ti aspetti di trovarci ? |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:25.