Commentça marche

Bonsoir à tous,

voila j'aimerai s'il y a une fonction qui permet de determiner le nombre d'élements qui se trouve dans un tableau de fichiers sans que l'utilisateur ne le lui donne à partir du clavier.
Par exemple pour un tableau d'entiers, on fait:

int a,tab[30];

a=sizeof(tab)/sizeof(tab[0]);

2 réponses

  1. Je ne sais pas ce que tu entends par 'tableau de fichiers'.
    Pour ce qui est de ton tableau d'entier: si tu obtiens la taille effective du tableau, c'est que le compilateur n'est pas idiot, tu viens juste de lui dire 'tab[30]'... cqfd !
    Bonne continuation.
    0
    1. Un tableau de fichiers ?

      Des chaines de caractères ? si c'est ça c'est la même chose !

      avec le compilateur GCC il me semble que les entiers sont sur 8octets. donc un tableau d'entiers de 10 éléments fera 10*8 => 80 octets. Donc sizeof(tab) renvoi 80.

      Donc chacune des cellules du tableau font 8 octets. 80/8 => 10

      Donc quelque soit le type de tableau (entier, double, char ...) le principe est le même.

      De plus tu dis tab[30] donc tu connais la taille à l'avance, il est plus judicieux d'utiliser une variable constante par exemple :

      #define TAILLE 30
      
      int main(void)
      {
        int tab[TAILLE];
      }


      Ainsi quand tu voudras faire un for pour explorer le tableau tu utiliseras TAILLE et non 30, plus simple surtout si tu veux augmenter la taille ...
      0