Segmentation fault core dump sur un tableau 2d alloué dynami

Nele_2004 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
J'ai essayé d'initialiser un tableau 2d alloué dynamiquement dans une fonction mais ça me met segmentation fault core dumped sans que je ne comprenne pourquoi. Quelqu'un peut il m'aider s'il vous plaît ?
A voir également:

5 réponses

Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101
 
Bonjour,

Il manque en effet une étoile. Mais il y a aussi un changement de référenciel qui fait que ton code donnera n'importe quoi si
largeur
était différent de
hauteur
:
- dans
create_a_matrice()
, tu poses le premier indice comme parcourant la largeur.
- mais dans
fill_matrice()
, le premier indice parcourt la
hauteur
!
1
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Bonjour,

Plutôt que de faire une photo avec des reflets (ou même une capture d'écran) dans laquelle on ne voit même pas tout le code, pourquoi ne pas juste le copier coller et le mettre en forme avec les balises de codes ?

Mais ce que je peux d'ores et déjà te dire, c'est que vu que tes noms de fonction comportent des espaces (ce qui n'est pas autorisé en langage C), ton programme n'a aucune chance de compiler...

Bonne chance
0
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 105
 
Salut Nele_2004,

Il est effectivement étonnant que tu arrives à compiler compte tenu de ce que dit mamiemando, qui est exact (noms de fonctions avec des espaces ... sauf si ta photo ne capture pas bien des underscore qu'on ne verrait pas et donnerait l'illusion que tu mets des espaces entre les mots).

Il reste que un "segmentation fault core dumped" est une erreur à l'exécution, qui suppose que tu aies pu compiler.

Tu as différentes méthodes pour allouer de la mémoire sur le tas à un tableau à deux dimensions et y accéder ensuite.

Tu en as plusieurs qui sont présentées sur cette page : https://www.geeksforgeeks.org/dynamically-allocate-2d-array-c/


Dal
0
Nele_2004
 
Bonjour,
J'ai été éclairée sur la raison du problème. Il manquait une étoile au int du sizeof à la deuxième ligne de code ( si cela pouvait être utile à quelqu'un d'autre). Concernant les underscore, en effet ils sont présents c'est juste qu'ils ne s'affichent pas ( une tendance de l'ordinateur).
Toujours est-il que je vous remercie de m'avoir répondu et m'excuse de la qualité de l'image.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Bonjoure Nele_2004,

Merci pour ton retour.

As-tu résolu ton problème ? Si oui, merci de nous le dire et de basculer le sujet en résolu),

Dans le cas contraire, indique-nous tes questions et copier colle ton code (avec les balises de code) afin que nous soyons en mesure de t'aider.

Bonne chance
0