Taille d'un tableau [Résolu/Fermé]

Signaler
Messages postés
13
Date d'inscription
mercredi 14 octobre 2015
Statut
Membre
Dernière intervention
27 novembre 2016
-
Messages postés
13
Date d'inscription
mercredi 14 octobre 2015
Statut
Membre
Dernière intervention
27 novembre 2016
-
Bonjour,
J'aimerai savoir sil existe une fonction pour donner la taille d'un tableau de ce type et comment l'utiliser,

int tab [4] = {4, 34, 15, 12};
A voir également:

1 réponse

Messages postés
5491
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 avril 2021
932
Salut Maelyy17,

Si tu veux obtenir la taille occupée en mémoire, tu utilises sizeof(tab).

Si tu veux obtenir le nombre d'éléments susceptibles d'être stockés dans le tableau, tu dois diviser le résultat par la taille occupée en mémoire par un élément int.

#include <stdio.h>

int main(void)
{
    int tab [4] = {4, 34, 15, 12};
    printf("Nombre d'éléments dans tab : %d\n", 
            sizeof(tab) / sizeof(int));
    return 0;
}

Dal
Messages postés
13
Date d'inscription
mercredi 14 octobre 2015
Statut
Membre
Dernière intervention
27 novembre 2016
1
Bonjour Dal,

Merci pour ses explications claires,
j'ai juste besoin d'une précision à la 7ième ligne le int est-il équivaut à *tab ?
Messages postés
5491
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 avril 2021
932
à la 7ième ligne le int est-il équivaut à *tab ?

je ne suis pas sûr de bien comprendre ta question...

cependant, comme indiqué dans ma réponse,
sizeof(int)
renvoie la taille occupée en mémoire par un élément de type int, donc "int" signifie juste "un élément le type int".

si tu fais
sizeof(*tab)
, tu passes à
sizeof()
le premier élément du tableau, qui est de type int. Donc, tu obtiens le même résultat, puisqu'il est de type int.
Messages postés
13
Date d'inscription
mercredi 14 octobre 2015
Statut
Membre
Dernière intervention
27 novembre 2016
1
d'accord je comprends mieux,
Excellente soirée :)