Array- Struct, Stringhe, Puntatori
Array- Struct, Stringhe, Puntatori
ARRAY DI STRINGHE
ARRAY DI PUNTATORI
1) COSA SONO Gli array di puntatori in C sono strutture dati che contengono un insieme di puntatori. Ogni
elemento dell'array è un puntatore a un oggetto di un tipo specifico, come un int, un char, una struttura o
persino un altro puntatore. Gli array di puntatori sono utili in molte situazioni, in particolare quando si
desidera gestire un insieme di dati o oggetti, ciascuno dei quali può essere di dimensioni diverse o di tipi
diversi.
2) DICHIARAZIONE
int* Array[5]; // Dichiarazione di un array di puntatori a int con 5 elementi
char* strings[3]; // Dichiarazione di un array di puntatori a stringhe (array di caratteri)
3) ASSEGNAZIONE DEI PUNTATORI Puoi assegnare ai puntatori gli indirizzi di variabili o oggetti
appropriati.
int x = 10, y = 20, z = 30;
int* intArray[3] = {&x, &y, &z};
4) ACCESSO AI DATI ATTRAVERSO I PUNTATORI Puoi accedere ai dati referenziati dai puntatori
utilizzando l'operatore di dereferenziazione `*`.
printf("%d\n", *intArray[0]); // Stampa il valore referenziato dal primo puntatore
printf("%s\n", strings[1]); // Stampa la seconda stringa
ESEMPIO
#include <stdio.h>
main(){
int *a[20]; //dichiariamo un array di 20 elementi
int x;
x=8; //assegniamo il valore 8
a[5]=&x; //assegniamo l'indirizzo della variabile x
printf("%d\n", *a[5]); //visualizziamo il valore di x
return 0;
}
Gli array di puntatori sono spesso utilizzati per gestire una raccolta dinamica di dati, come array di stringhe
di lunghezze diverse, strutture di dimensioni diverse o altre strutture dati complesse. Possono essere utili
anche per semplificare l'accesso a dati multidimensionali o per implementare matrici dinamiche.
Tieni presente che, quando utilizzi array di puntatori, è importante gestire attentamente la memoria, in
particolare l'allocazione e la deallocazione dinamica, per evitare perdite di memoria o accessi non validi.