Je vais vous poser une colle qui à déjà était posé par Taz sur un autre forum :
Le but est de retourner la taille d’un tableau le tout en vrai C++ pas en C/C++
La réponse tiens en 3 lignes.
Ca serais cool qu’il n’y ait que des réponses sérieuses et ceux qui ont trouvé la soluce sur le net qu’il la garde pour eux peut être que certain on envies de chercher par eux même.
fonction de base ?
normalement y a pas besoin de fonction autre que
appel_a_ta_fonction_qui_retourne_la_taille_de_tab
mais si tu y arrive avec des fonctions de bases
non car la tu ne retourne pas la taille du tableau mais la taille du vector ou stack initialisé avec ce tableau.
Le but étant de connaitre la taille du tableau le plus facilement et rapidement possible.
or la avec ta méthode si le tableau fais un millions d’élément …
[cpp]
int toto::longTab(int tab[])
{
int res=0,i=0,tab2=tab;
while(tab[i]==tab2[i]){i++;res++;}
return res;
}
[/cpp]
Donc là je fais pointer un 2e tableau au même endroit que le premier, je parcoure les 2 tableaux en même temps et quand ça va dépasser, les tableaux n’auront pas la même valeur. C’est surement pas ça mais je tente ma chance quand même !
on peut pas catcher l’erreur et renvoyer le res quand l’erreur est détectée ? [:______]
Moi j’pense que tout bêtement, j’casserai la tête du développeur qu’a pas voulu mettre la taille du tableau dans le 1° élément et qui m’oblige à faire une usine à mazout [:matleflou]
Comme je l’ai dis plus le but étant un truc rapide et parcourir tout le tableau c’est pas des plus rapide.
un indice : int tab[10000000];
le type de tab n’est pas int* mais int[10000000]
deplus la methode attendu donne la solution à la compilation et non à l’éxecution.