Commentça marche

Fermé
steftou - 13 mai 2009 à 03:49
 Utilisateur anonyme - 13 mai 2009 à 12:16
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

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
13 mai 2009 à 12:16
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