|
Page Précédente | |
Auteur | Sujet : défi de la semaine : fonction retournant la taille d'un tableau |
Publicité | Posté le 22-11-2003 à 17:25:47 |
Taz bisounours-codeur |
personne ne comprenant pas le concept de fonction, s'abstenir
|
chrisbk - |
Taz bisounours-codeur |
chrisbk - |
|
Taz bisounours-codeur | bah je pose un petit problème sérieux, si ça part en blabla direct dès le premier message, c'est pas terrible. |
Taz bisounours-codeur |
je demande une fonction tu me sors sizeof ... je dis tableau, tu me dis vector ... |
chrisbk - |
|
R3g fonctionnaire certifié ITIL |
Et t'as eu combien de reponses serieuses ? T'as fais le topic juste pour le plaisir de pouvoir poster ta reponse une fois que tout le monde aura dit qu'il ne sait pas...
--------------- Au royaume des sourds, les borgnes sont sourds. |
Publicité | Posté le 22-11-2003 à 17:47:25 |
R3g fonctionnaire certifié ITIL |
Bon alors essayons de reflechir : la fonction dont tu parles prendrait donc en paramètre un pointeur (je suppose). D'après les faibles connaissances que j'ai, le pointeur est juste variable dont la valeur est une adresse memoire.
--------------- Au royaume des sourds, les borgnes sont sourds. |
polo021 |
|
R3g fonctionnaire certifié ITIL |
Ou alors écrire dedans et catcher l'exception levée par une acces violation ? --------------- Au royaume des sourds, les borgnes sont sourds. |
R3g fonctionnaire certifié ITIL |
Ok mais alors (c'est là que j'y connais rien en C++), pour passer le tableau en paramètre, il faut uiliser un pointeur, ou on peut le passer par référence ? --------------- Au royaume des sourds, les borgnes sont sourds. |
Taz bisounours-codeur |
tu connais vraiment pas grand chose. une erreur de segmentation ne lève pas d'exception et tu peux te ballader la ou tu ne devrais pas sans que ton système t'envoie le dit signal. surtout que si tu réfléchis, c'est un peu dommage d'essayer de calculer la taille d'un tableau à l'exécution, alors que techniquement cette information est disponible à la compilation (ce qu'exploite sizeof) |
R3g fonctionnaire certifié ITIL | Faut m'excuser hein.. Je fais du Java, alors gérer la mémoire c'est pas mon truc. Mais ca m'intéresse beaucoup, j'essaie de me mettre au C++. Tu pourrais peut-être lacher un indice ? --------------- Au royaume des sourds, les borgnes sont sourds. |
Taz bisounours-codeur | ce qu'il faut bien comprendre dans le problème ici, c'est que ce n'est pas une histoire de gestion de la mémoire. un tableau Java a un attribut pour mémoriser sa taille. en C et C++, il n'en ai rien. En C, il est impossible de faire une fonction renvoyant la taille (le nombre d'éléments) d'un tableau. J'espère que tu en ai convaincu. Ton problème reg, c'est que tu débutes un peu trop quand même : je ne pense pas que tu te sois poser la question avant aujourd'hui. Quand je donnerais la solution, aussi simple soit elle, tu ne la comprendras pas.
|
R3g fonctionnaire certifié ITIL | Effectivement, je ne me suis jamais posé la question : j'ai toujours été persuadé qu'on ne pouvait pas connaitre la taille d'un tableau. Je vais arrêter de pourrir ton topic, mais j'attends la réponse avec curiosité. --------------- Au royaume des sourds, les borgnes sont sourds. |
ffluff Challenge Everything | bon je me lance
Message édité par ffluff le 22-11-2003 à 18:35:54 --------------- «Le succès consiste à aller d'échecs en échecs sans jamais perdre son enthousiasme» - Churchill |
ffluff Challenge Everything | en fait non
Message édité par ffluff le 22-11-2003 à 18:37:51 --------------- «Le succès consiste à aller d'échecs en échecs sans jamais perdre son enthousiasme» - Churchill |
Taz bisounours-codeur | bah il est bien beau ton programme seulement il boulcera indéfiniment, puisque par définition typeid(tab[0])==typeid(tab[n]) |
ffluff Challenge Everything | mais la vu que n peut depasser la capacité du tableau c'est pas vrai si n> taille du tableau --------------- «Le succès consiste à aller d'échecs en échecs sans jamais perdre son enthousiasme» - Churchill |
Taz bisounours-codeur |
masi biensur .. fais gaffe, on est le weekend, t'es entrain de te piéger toi même |
ffluff Challenge Everything | t'es donc entrain de me dire :
--------------- «Le succès consiste à aller d'échecs en échecs sans jamais perdre son enthousiasme» - Churchill |
nraynaud lol | taz> laisse encore du temps, je suis sur une idée (tordue). --------------- trainoo.com, c'est fini |
nraynaud lol | ffluff > c'est sur que toutes les case d'un tableau ont le même type. --------------- trainoo.com, c'est fini |
nraynaud lol |
Proposition candide.
--------------- trainoo.com, c'est fini |
Taz bisounours-codeur |
oui, c'est un peu la base de tous.
Message édité par Taz le 22-11-2003 à 19:41:49 |
Taz bisounours-codeur | nraynaud > très très tordu effectivement, et typeof ne fait pas parti du C++. en l'utilisant tu tentes de contourner un problème qui n'existe pas |
nraynaud lol | bon, relaisse du temps, je cherche une référence du C++ (dès qu'on mets template dans google, on a la STL, c'est lourd) et je regarde en détail. --------------- trainoo.com, c'est fini |
nraynaud lol | j'abandonne, je trouve pas de spec en lignedu langage (et il semble que ça n'existe pas http://saloon.javaranch.com/cgi-bi [...] 2&t=001713 ), j'ai pas de bouquin, et dans les tutoriaux, j'ai rien trouvé d'intéressant. --------------- trainoo.com, c'est fini |
bossamiral2 Ctrl+Alt+Del | euh j'y connais rien du tout en c++ mais on ne peut pas connaitre l'adresse de départ d'allocation du tableau et celle de la fin d'allocation. Avec ça on devrait pouvoir déterminé la taille du tableau donc le nombre d'élément, non
|
Taz bisounours-codeur |
|
bossamiral2 Ctrl+Alt+Del |
Message édité par bossamiral2 le 22-11-2003 à 20:17:25 |
Taz bisounours-codeur | ce n'est pas qu'on ne peut pas, c'est quelle n'existe pas
!= tableau
|
nraynaud lol | bossamiral > si il pose la question c'est que la réponse doit être un minimum élégante, donc ne repose que sur les types statiques et est entièrement résolue à la compilation. --------------- trainoo.com, c'est fini |
ffluff Challenge Everything | question :
--------------- «Le succès consiste à aller d'échecs en échecs sans jamais perdre son enthousiasme» - Churchill |
Taz bisounours-codeur | int *tab= new int[10]
|
usa_satriani S.P.Q.R. | hs:
|
Publicité | Posté le |
Page Précédente |
Sujets relatifs | |
---|---|
Redimensionnement de tableau | Problem de dimension de tableau en CSS |
Tri un tableau de tableaux ? | VB + Classe - Tableau d'objet |
[C] Taille d'un tableau d'int ? | rafraichissement d'un tableau dynamique a l'aide de boutons |
Modifier des éléments créé par une fonction | Passage de pointeur de fonction membre à une fonction |
taille d'un char*[] avec \0 | |
Plus de sujets relatifs à : défi de la semaine : fonction retournant la taille d'un tableau |