Commentça marche

steftou -  
 Utilisateur anonyme -
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]);
A voir également:

2 réponses

loupius
 
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
Utilisateur anonyme
 
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