La plupart d'entre nous connaissent la création de tableaux avec des types de données tels que des entiers, des caractères ou des flotteurs. Ce guide vous montrera comment créer un tableau de pointeurs et l'utiliser pour stocker des données.
Comment créer un tableau
Nous pouvons définir un tableau comme une collection d'articles. Par exemple, un tableau peut stocker des noms de 100 personnes et de ces.
Pour déclarer un tableau en C, nous utilisons la syntaxe:
DataType Arrname [Arrsize];Ici, le type de données fait référence au type de tableau, qui peut être un entier, un flotteur, un caractère ou un pointeur.
L'arrname fait référence au nom donné au tableau, qui peut être n'importe quel terme descriptif pour la variable tant qu'il obéit aux règles de nommer une variable en C.
Enfin, l'Arrsize fait référence au nombre total d'articles à stocker dans le tableau. Cette valeur est constante et immuable une fois déclarée.
Par exemple, nous pouvons définir un tableau d'entiers pour stocker 10 valeurs comme suit:
int myarray [10];Nous pouvons également définir et initialiser un tableau dans la même ligne. Par exemple, pour définir le tableau ci-dessus et le remplir avec les valeurs requises, nous pouvons faire:
int myArray [10] = 1,2,3,4,5,6,7,8,9,10;Nous pouvons également faire de même sans spécifier explicitement la taille du tableau. Considérez l'exemple ci-dessous:
int myArray [] = 1,2,3,4,56,7,8,9,10;Pour accéder aux éléments dans un tableau, nous utilisons la méthode d'indexation en spécifiant le nom du tableau suivi de l'index de l'élément auquel nous souhaitons accéder.
Par exemple, pour accéder à l'élément de l'index 5, nous pouvons faire
printf («% d», MyArray [5]);Dans ce cas, il devrait retourner le 6e L'article dans le tableau car l'indexation du tableau commence à 0. Par conséquent, le premier élément est à 0, le deuxième élément à 1, et ainsi de suite.
Nous pouvons également utiliser la méthode ci-dessus pour modifier les valeurs dans un tableau.
Voici un exemple:
MyArray [5] = 5;L'instruction ci-dessus modifiera la valeur du tableau à l'index 5 à 5.
C pointeurs
Les pointeurs sont des variables que nous pouvons utiliser pour stocker les adresses des valeurs dans un programme. Par exemple, lorsque vous définissez une variable, il se voit attribuer une adresse mémoire à laquelle vous pouvez accéder en utilisant le
&varname;
Par exemple:
int i = 10;Le code ci-dessus devrait donner l'adresse de la variable «i». Notez que cette adresse peut varier à chaque fois que vous exécutez le programme.
Voici un exemple d'adresse:
0061ff1cDéclarer un pointeur
Pour déclarer un pointeur en C, nous utilisons le type suivi d'un astérisque et du nom de la variable.
Par exemple:
int * ptr, i;Pour attribuer une adresse au pointeur, nous pouvons faire:
int i = 10;Dans l'exemple ci-dessus, nous définissons l'adresse de la variable «i» à * ptr.
int * ptr, i;Accéder aux valeurs à partir d'un pointeur
Nous pouvons accéder aux valeurs stockées dans une adresse de pointeur en utilisant la notation astérisque (*). Par exemple:
int * ptr, i;Dans ce cas, nous obtenons la valeur spécifique stockée et non l'adresse de la valeur.
Tableau de pointeurs
Au fur et à mesure que nous avons créé un tableau de valeurs entières dans les exemples ci-dessus, nous pouvons créer un tableau d'un pointer-basalement, un tableau qui stocke les adresses de mémoire.
Pour ce faire, nous pouvons utiliser la syntaxe:
int * ptRarray [10];Dans cet exemple, nous avons un tableau de 10 pointeurs entiers, vous permettant de stocker des adresses mémoire de 5 variables entières.
Par exemple, nous pouvons avoir le code simple ci-dessous:
#inclureUne fois que nous avons compilé et exécuté le code ci-dessus, nous devons obtenir des résultats similaires à ceux ci-dessous:
La valeur 100 a l'adddress 6422280En utilisant cette méthode, nous pouvons accéder aux adresses et aux valeurs stockées dans le pointeur du tableau.
Conclusion
Dans ce court guide, nous avons discuté de la façon d'utiliser des tableaux et des pointeurs dans la langue C. Nous avons également discuté de la façon de créer un tableau de pointeurs pour stocker les adresses pour diverses valeurs.