Salve ragazzi,
leggendo un manuale ho incontrato questo codice e non riesco a capire una cosa:
e nelle implementazioni delle funzioni c'è:
in pratica con riesco a capire che puntatore è questo passato alla funzione: CStash* s
e non riesco a capire perchè dopo nel programma usa sempre ' s '. Se non mi sono spiegato bene ditemelo
Grazie per l'aiuto
-CrashTest
leggendo un manuale ho incontrato questo codice e non riesco a capire una cosa:
Codice:
typedef struct CStashTag {
int size; // dimensione di ogni elemento
int quantity; // numero di elementi allocati
int next; // indice del primo elemento vuoto
// array di byte allocato dinamicamente:
unsigned char* storage;
} CStash;
void initialize(CStash* s, int size);
int add(CStash* s, const void* element);
Codice:
void initialize(CStash* s, int sz) {
s->size = sz;
s->quantity = 0;
s->storage = 0;
s->next = 0;
}
int add(CStash* s, const void* element) {
if(s->next >= s->quantity) // E’ rimasto spazio sufficiente?
inflate(s, increment);
// Copia dell’elemento nell’allocazione,
// partendo dal primo elemento vuoto:
int startBytes = s->next * s->size;
unsigned char* e = (unsigned char*)element;
for(int i = 0; i < s->size; i++)
s->storage[startBytes + i] = e[i];
s->next++;
return(s->next - 1);
// numero d’indice
}
e non riesco a capire perchè dopo nel programma usa sempre ' s '. Se non mi sono spiegato bene ditemelo
Grazie per l'aiuto
-CrashTest