Comment déterminer la taille d'un tableau

Comment déterminer la taille d'un tableau
Array est une collection linéaire d'éléments. Pour calculer la taille du tableau, nous pouvons utiliser l'opérateur sizeof (). À l'aide de l'opérateur sizeof (), nous pouvons facilement trouver la taille d'un tableau. À l'exception de l'opérateur de taille (), nous pouvons également utiliser le pointeur pour calculer la taille du tableau.

Principe de base de la taille de l'opérateur pour calculer la taille du tableau

Mémoire requise (en octets) = sizeof (type de données) * Taille du tableau.

Exemple: int a [10];

Alors, sizeof (dataType) = sizeof (int) = 4 octets

Taille du tableau = 10 .

Donc, mémoire requise = (4 * 10) octets = 40 octets

Exemple de programmation 1:

# inclure
# inclure
int main()

int arr [] = 1, 2, 3, 4, 5;
int i;
int size = sizeof (arr) / sizeof (arr [0]); // Taille du tableau.
printf («Taille de Array =% d \ n», taille);
printf («Les éléments du tableau sont:»);
pour (i = 0; i < size ; i++)

printf («arr [% d] =% d \ n», i, arr [i]);

Sortir: La taille du tableau est 5

Explication: Ici, nous déclarons un tableau nommé Arr [] et attribuons certaines valeurs. Ils sont 1, 2, 3, 4, 5. Si nous voulons déterminer la taille du tableau, signifie combien d'éléments présents dans le tableau, nous devons écrire le calcul à l'aide de la taille de l'opérateur.

Sizeof (arr []) / sizeof (arr [0]);

Ici, la taille de l'arr [] est de 5 et chaque entier prend de la mémoire 4 octets.

Ainsi, la mémoire totale est consommée = (5 * 4) octets.

= 20 octets.

Sizeof (arr [0]) signifie ici que les éléments sont entiers. Donc, il faut de la mémoire 4 octets.

Donc, la taille du tableau = (20/4) octets = 5 octets.

Si nous prenons un tableau ou une chaîne de caractères au lieu d'un tableau entier, nous pouvons expliquer ce qui s'est passé dans le programme suivant.

Exemple de programmation 2:

# inclure
# inclure
int main()

char arr [] = a, b, c, d, e;
int i;
int size = sizeof (arr) / sizeof (arr [0]); // Taille du tableau
printf («Taille de Array =% d \ n», taille); .
printf («Les éléments du tableau sont:»);
pour (i = 0; i < size ; i++)

printf («arr [% d] =% c \ n», i, arr [i]);

Sortir: La taille du tableau est 5

Explication: Ici, nous déclarons un tableau nommé Arr [] et attribuons certaines valeurs.Ils sont 'A', 'B', 'C', 'D', 'E'. Si nous voulons déterminer la taille de la table.

Sizeof (arr []) / sizeof (arr [0]);

Ici, la taille de l'arr [] est de 5 et chaque caractère prend de la mémoire 2 octets.

Ainsi, la mémoire totale est consommée = (5 * 2) octets.

= 10 octets.

sizeof (arr [0]) signifie ici que les éléments sont du caractère. Donc, il faut de la mémoire 2 octets.

Donc, la taille du tableau = (10/2) octets = 5 octets.

Si nous prenons un tableau de flotteur au lieu du tableau de caractères, nous pouvons expliquer ce qui s'est passé dans le programme suivant.

Exemple de programmation 3:

# inclure
# inclure
int main()

char arr [] = 1.5, 2.5, 3.5, 4.5, 5.5;
int size = sizeof (arr) / sizeof (arr [0]); // Taille du tableau
printf («Taille de Array =% d \ n», taille);
printf («Array Elements:»);
pour (int i = 0; i < size ; i++ )

printf («arr [% d] =% f \ n», i, arr [i]);

Sortir: La taille du tableau est 5

Explication: Ici, nous déclarons un tableau nommé Arr [] et attribuons certaines valeurs.Ils sont 1.5, 2.5, 3.5, 4.5, 5.5. Si nous voulons déterminer la taille de la table.

Sizeof (arr []) / sizeof (arr [0]);

Ici, la taille de l'arr [] est de 5 et chaque flotteur prend de la mémoire 8 octets.

Ainsi, la mémoire totale est consommée = (5 * 8) octets.

= 40 octets.

Sizeof (arr [0]) signifie ici que les éléments sont flottants. Donc, il faut de la mémoire 8 octets.

Donc, la taille du tableau = (40/8) octets = 5 octets.

Calculez la taille du tableau à l'aide du pointeur

Une autre méthode pour déterminer la taille du tableau consiste à utiliser le pointeur.

Exemple de programmation 4:

int main()

int main()

int arr [] = 1, 2, 3, 4, 5;
int size = * (& arr + 1) - arr; // déclarant la variable de taille à l'aide du pointeur.
printf («Le nombre d'éléments est Arr [] est% d», taille);
retour 0;

Explication: Ici, nous calculons la taille du tableau à l'aide du pointeur.

int size = * (& arr + 1) - arr;

La ligne ci-dessus nous aide à calculer la taille du tableau. Ici, ARR désigne l'adresse de base du tableau ou de l'adresse du premier index du tableau.

* (& arr + 1)

Cela signifie l'adresse du deuxième index du tableau. Parce que nous ajoutons 1 à l'adresse de l'adresse de base.

Si nous soustrayons la valeur d'adresse du tableau de son adresse de base, nous obtenons la taille de chaque bloc dans le tableau. Ensuite, nous pouvons facilement découvrir la taille du tableau en comptant le nombre total d'entrées que nous avons donné à ce tableau particulier.

Sortir:

Conclusion

De toute évidence, il est montré qu'à l'aide d'un pointeur d'opérateur sizef (), nous pouvons facilement calculer la longueur du tableau ou la taille du tableau. Principalement, l'opérateur sizeof () est chargé de calculer la taille du tableau, mais le pointeur peut également prendre en charge pour déterminer la taille du tableau passivement.