Un computer utilizza la memoria per archiviare i dati con i valori, come numeri, caratteri e valori di bit. Dati sono memorizzati in celle di memoria identificate con un indirizzo di memoria univoco . Puntatori sono strutture di dati che non contengono valori , invece , puntatori contengono un indirizzo di memoria di una cella di memoria che memorizza un valore . I puntatori sono utili perché consentono di costruire strutture di dati senza una dimensione definita ( come ad esempio gli array e liste concatenate ) , allocare e rilasciare memoria dinamica e di eseguire la manipolazione dei dati indiretti . C Strings
Linguaggi di programmazione
lavorano con risorse limitate . Un programma deve sapere quanta memoria avrà bisogno prima dell'esecuzione. Questo crea il problema di gestire un tipo di dati che non ha formato definito ( ad esempio , un programma che i paragrafi ' recita ' , con ogni paragrafo avente una lunghezza diversa ) . Puntatori affrontare questa situazione , sotto forma di stringhe C . Stringa AC è composta da un puntatore che punta al primo carattere della stringa e un carattere che segnala la fine della stringa (come il carattere di nuova riga , "\\ n" ) . Il puntatore viene incrementato di 1 ogni volta, finché non punta l'ultimo carattere ( " \\ n" ) .
Linked Lists
Una lista concatenata è una lista che aumenta la sua dimensione come nuovi elementi vengono aggiunti alla lista . A differenza di array e stringhe C che memorizzano i dati in modo sequenziale nella memoria , liste concatenate non sono necessariamente memorizzati in indirizzi di memoria adiacenti. Liste collegate sono costituiti da nodi , e ogni punto di nodo al nodo successivo . Il vantaggio di questa struttura dati è che la lista cambia la sua dimensione in base alle esigenze degli utenti.