allocation dynamique double pointeur passer en parametre [resolu] - C - Programmation
Marsh Posté le 11-11-2010 à 00:32:26
1. Ca ne bug pas. Ca émet un message d'erreur. Quel est ce message ? Les débutants ne lisent jamais les messages d'erreur. Parfois, ils sont trompeurs, mais souvent, ils donnent des indications précieuses.
2. new n'est pas une instruction du langage C, mais une instruction du langage C++.
Soit la question a été postée dans la mauvaise section du forum, soit il fallait utiliser malloc au lieu de new.
Si la compilation a été faite avec un compilateur C, cela ne passe pas, c'est normal.
Si la compilation a été faite avec un compilateur C++, cela aurait dû passer, s'il y a les bons includes.
Voir les tutoriaux sur l'allocation dynamique en C et en C++, par exemple http://www.yolinux.com/TUTORIALS/C [...] emory.html
3. Comme ce tableau ne doit pas être gigantesque, on peut faire ce programme sans utiliser l'allocation dynamique. C'est plus simple, et plus rapide à l'exécution.
Marsh Posté le 11-11-2010 à 00:42:44
ça bug : la console crashe, pas de message
c'est du C/C++, c'est comme ça qu'on nous l'apprend en cours, quand je poste dans la categorie C++ on me dit en C++ on utilise de vecteur pas des tableau revient quand tu aura re-ecrit ton code
3/ l'allocation dynamique est imposé, exercice ecole, d'ailleur je vois pas pourquoi tu pense que le tableau n'est pas forcement grand, on converti une liste chainnée, celle ci peut avoir n'importe quelle taille
c'est pas vraiment a l'allocation que j'ai des problemme (je pense) mais plutot un cafouillage entre tout ces pointeur
j'ai fais ça histoire d'y voir plus clair
Code :
|
la console crash a *tab[2] = 202;
Marsh Posté le 11-11-2010 à 01:08:52
En faisant:
Code :
|
cela fonctionne, surement une regle de priorite des operateurs que j'ai oublie...
Liberer la memoire allouee est toujours une bonne pratique (derniere ligne du main):
Code :
|
Tu devrais apprendre a utiliser un debugger, c'est quand meme bien plus pratique que des "print" !
Marsh Posté le 10-11-2010 à 22:41:58
hi,
je dois transformer une liste chainé en tableau, et le prototype de la fonction qui fait ça m'est imposé.
elle retourne la taille du tableau, comme vous pouvez vous en douter wagon est la tete de liste, et ce qui m'embette c'est l'**tab
ça me permet de recuperer l'adresse du tableay que je vais creer, mais j'arette pas de m'embrouiller
donc en gros je veux faire ça je pense :
le problemme est, comment l'ecrire?
voila mon main :
et voici la fonction :
ça bug au moment du new
merci
Message édité par sliders_alpha le 11-11-2010 à 11:29:22