begin process at 2012 05 30 18:10:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Tableaux a 2 dimensions


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Tableaux a 2 dimensions

mercredi 31 janvier 2007 à 16:37:55 | Tableaux a 2 dimensions

AsM0DeUz

Membre Club

'lut !

Je tente de comprendre les tableaux a 2 dimensions en me servant d'un tableau de pointeurs. Seulement lorsque je me documente sur le net, je tente trouve ca :

   int ** a = malloc(nrows * sizeof *a );
    for(i = 0; i < nrows; i++)
       a[i] = malloc(ncolumns * sizeof *(a[i]));

   float **float_values = (float**)malloc(4 *sizeof(float*));
    for(int i=0; i<4; i++)
        *(float_values+i) = (float*)malloc(3 *sizeof(float));


laquelle des 2 solutions vous semble la meilleure ?

Pourquoi y a t'il un (float**) dans cette ligne :

   float **float_values = (float**)malloc(4 *sizeof(float*));

Est ce que ca fait la meme chose :

   float **float_values = malloc(4 *sizeof(float*));

Merci


mercredi 31 janvier 2007 à 16:56:22 | Re : Tableaux a 2 dimensions

SAKingdom

Membre Club
Réponse acceptée !
Les deux sont semblables. La première alloue de la mémoire pour des int et la seconde pour des float.
Le float** devant le malloc est un cast. Ça sers, en gros, à dire au compilateur d'interpréter la valeur retourné par malloc comme étant un float**.

Je vien juste de publier un snippets. C'est un allocateur pour pointeur de pointeurs. C'est très simple d'utilisation et bien plus performant qu'allouer séparément la mémoire pour chaque pointeur:
http://www.codyx.org/snippet_allocateur-pointeur-pointeurs_293.aspx

C++ (@++)



Cette discussion est classée dans : tableaux, sizeof, float, values, malloc


Répondre à ce message

Sujets en rapport avec ce message

pb malloc ss linux [ par Ricool ] Salutje suis en train de faire un petit prog qui manipule des matrices, mais de temps en temps pr creer une matrice le prog plante ("segmentation faul Free() veut pas désallouer.... [ par benlustr ] Bonjour à tous, c'est encore moi Dans une fonction, j'ai deux pointeurs qui s'incrémentent dans une boucle. à la fin de la fonction, je libère les zon strtok et atof la memoire ne peut etre written [ par ciberrique ] Bonjours j'ai écris ce code mais il y a une erreur a l'execution de type la mémoire de ne peut etre "written".Il semlerait que l'erreur soit sur les l Tableaux d'objets identiques [ par zebulon88 ] Bonjour à tous, voilà j'ai un problème, j'utilise un tableau d'objet avec des paramètres fixés par rand le problème est que lorsque je fixe la valeur extern et tableaux dynamique [ par jtmarin ] Pour un algorithme de marching cubes(pour des metaballs)j'ai besoin d'un tableau 3d dont la taille peut etre choisie au lancement du programme j'ai:// fwrite en mémoire.... [ par loicus ] Bonjour à tous...J'ai un très gros probleme.  Je travail avec des fichiers binaires en lecture et en écriture.Je n'ai aucun probleme avec l'utilisatio dépassement de capacité de la pile d'exécution [ par glipper ] Bonjour,j'ai crée une fonction comme ceci, qui mémorise les malloc effectués par un programme :void* _malloc(size_t n, int line, char* file){    void* Problème avec les float [ par nico_44 ] Bonjour à toutes et à tous, J'ai un problème avec les float. Je communique avec une base de données dans laquelle est stockée notamment un tarif. L'u Manipulation de grand tableaux d'entier [ par oistrakh ] Bonjour,Pour acceler un programme VBA, j'ai introduit une dll dans laquelle notammentje cherche a remplir des tableaux tres grand ( j'aimerais atteind Trier les valeur d'un tableau [ par pirate75000 ] Bonjour,Je remplis un tableau avec de valeur numerique que je voudrais reclasser par ordre croissantSachant que je peux avoir deux valeur identiquele


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,366 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales