Soucis d'allocation dynamique en Borland C++

djoly Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
djoly Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai écrit des programmes en C/DOS que je souhaite traduire en Borland C++ builder 6.0.
Dans la mesure où je travaille en analyse spatiale (climatologie), j'ai besoin de mémoriser de
grosses matrices de données à 2 dimensions (MNT, images de télédétection par exemple).
J'ai un pb relatif à l'allocation dynamique de matrices à 2 dimensions. En C/DOS, voici la manière
que j'utilise pour réservezr la mémoire nécessaire dans le tas éloigné :
___________________________________________________________

#include <alloc.h>

int far **d2;
int NoL, NoC, k;

main()
{
d2=farcalloc(NoL, sizeof(int*)); /*NoL=Nombre de Lignes de la matrice */
for(k=0; k<NoL; k++)
{
d2[k]=farcalloc(NoC, sizeof(int)); /*NoL=Nombre de Colonnes de la matrice */
}
}
___________________________________________________________

Quelle pourrait etre la traduction de cela en Borland C++ ?
Merci d'avance de votre aide.
"Svissen"
A voir également:

1 réponse

josch83
 
/*
*
* Voici une petite fonction qui pourais t'être pratique.
*
*/



#include <stdlib.h>

short alloc_matrix(int **ptr_table, int height, int weight);

int main(){

int table **table;

alloc_matrix(table,4,5);

*(*(table+2)+2)=3; // equal to : table[2][2]=3;

return 0;
}

short alloc_matrix(int **ptr_table, int height, int weight){

int **my_table, count1, count2;

my_table=malloc(sizeod(int)*height);

for(count1=0;count1<height;count1++){
*(my_table+count1)=(int *)malloc(sizeof(int)*weight);
}

for(count1=0;count1<height;count1++){
for(count2=0;count2<weight;count2++){
*(*(my_table+count1)+count2)=0x0;
}
}

ptr_table=my_table;

return 0;
}


// Bonne chance
// josch83
0
djoly Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de ta réponse; je teste quand j'aurai le temps....
Cordialement
0