Bonjour,

Mon programme compile bien, pourtant à l'exécution, Borland C++ s'arrête lors de l'appel de la fonction :
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
26
27
28
29
30
31
int decod( int freq, int tab_decod[256*256], unsigned char img[256*256])  
	{
   	int kx, ky, i, x[256], y[256], indiceint;
      float indice;
 
      i=0;
 
   	for (ky = 1; ky < freq-1; ky++)
      	{
         	for (kx = 1; kx < freq-1; kx++)
            	{
	              	indice = kx*256/((float)freq) + ky*256*256/((float)freq) + 257*256/(2*((float)freq));
                  x[i] = (int) (fmod(indice, 256)+ 0.5);
   					y[i] = (int) (indice / 256 + 0.5);
                  Trfret(img, x[i], y[i],-1);
                  indiceint = (int) (indice+0.5);
 
                  if (img[indiceint] == 0) // on est sur une case noire
                  	{
                  		tab_decod[i] = 1;
                     }
                  else
                  	{
                        tab_decod[i] = 0;
                     }
 
                  i++;
               }
         }
   	return i;
   }
Il me surligne la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 if (img[indiceint] == 0) // on est sur une case noire
(je ne sais pas si ça veut dire qu'il a planté en l'exécutant ou si c'était sur la ligne d'avant) et me dit qu'il y a un acces violation lors de la lecture d'une adresse. Pourriez vous je vous prie m'aider à trouver l'erreur dans mon code?

Merci beaucoup d'avance

Agnès