Un ordinateur utilise sa mémoire pour stocker des données avec des valeurs , telles que des numéros , des personnages et des valeurs binaires . Les données sont stockées dans les cellules de mémoire identifiés par une adresse mémoire unique. Les pointeurs sont des structures de données qui ne contiennent pas de valeurs , mais plutôt, contiennent des pointeurs une adresse de mémoire d' une cellule de mémoire qui stocke une valeur . Les pointeurs sont utiles car ils vous permettent de construire des structures de données sans une taille définie (comme les tableaux et les listes chaînées ) , allouer et libérer la mémoire dynamique et effectuer des manipulations de données indirectes. Photos, illustrations et langages de programmation C
Cordes travailler avec des ressources limitées. Un programme doit savoir combien de mémoire il faudra avant l'exécution. Cela pose le problème de la gestion d'un type de données qui n'a pas de taille définie ( par exemple , un programme que les paragraphes on lire , avec de chaque paragraphe ayant une longueur différente ) . Pointeurs face à cette situation sous la forme de chaînes C . Chaîne CA est composé par un pointeur qui pointe sur le premier caractère de la chaîne , et un caractère qui signale la fin de la chaîne (comme le nouveau caractère de la ligne , "\\ n" ) . Le pointeur se augmenté de 1 à chaque fois, jusqu'à ce qu'il pointe vers le dernier caractère ( "\\ n" ) .
Listes
une liste chaînée Lié une liste qui augmente sa taille que de nouveaux éléments sont ajoutés à la liste. Contrairement aux tableaux et les chaînes de carbone qui stockent des données de façon séquentielle dans la mémoire, les listes chaînées ne sont pas nécessairement stockées dans des adresses de mémoire adjacents . Listes chaînées sont formés par des noeuds , et chaque point de nœud à nœud suivant. L'avantage de cette structure de données est que la liste change de taille en fonction des besoins des utilisateurs.
Allocation dynamique
programmes
mémoire normalement attribuer la mémoire quand ils sont construite . Parfois, la mémoire allouée n'est pas suffisant pour gérer les données d'une taille inconnue. Les programmeurs utilisent une technique appelée allocation dynamique de mémoire pour être sûr que le programme peut surmonter ce problème. La mémoire dynamique est accessible à l'aide d'un pointeur pour pointer vers une adresse de mémoire en dehors de la mémoire réservée à l'origine par le programme. Pointeurs désallouer aussi la mémoire une fois qu'il n'est plus nécessaire .
Indirects Manipulation
Langages de programmation
de données nécessitent souvent la modification de la valeur des données . Les programmes utilisent des fonctions pour modifier et effectuer des opérations sur les données. En raison de la hiérarchie sur les programmes , les données sont constamment copiés et désalloués une fois qu'il est passé aux fonctions . Fonctions modifier les données , mais une fois que les données sont utilisées , ces modifications sont perdues . L'utilisation de pointeurs au lieu des types de données de base garantit que nous passons d'une adresse mémoire à des fonctions . De cette façon, toute modification apportée aux données stockées sur l'adresse mémoire restera pour le reste de l'exécution du programme.