Bonjour,
Voilà, je m'exerce actuellement à manipuler des matrices dynamiques.
Mais je suis confronté à un souci, les matrices à une dimension s'execute, s'affiche, etc ... très bien, mais ce n'est pas le cas des matrices à deux dimensions, qui elles au moment de leur allocation m'affiche un message d'erreur comme quoi elles ont voulu s'allouer à un espace memoire qui ne leur était pas adresser (Violation, etc ....)
Voici mon code source :
j'ai verfier mon code source par rapport à deux tutos sur le sujet, et il parait bon dans la syntaxe et dans le fonctionnement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 int a=7; int b=3; int i=0; int j=0; int **T = NULL; T = (int**)malloc(a * sizeof(int *)); for (i=0;i<a;i++) { T[i] = (int*) malloc(b * sizeof(int)); } for(i=0;i<a;i++) { T[i]=0; } puts(""); for(j=0;j<b;j++) { for(i=0;i<a;i++) { printf("%d",T[i][j]); } }
Je ne comprend pas d'où vient le problème !
Cela pourrait il être mon compilateur ?
J'utilise Visual C++ 2008.
Merci de votre aide.
Skanner
Partager