Rechercher : dans
Par :

Langage C (malloc et free)

Dernière réponse le 11 mar 2009 à 21:02:38 simyamsmasters, le 11 mar 2009 à 00:18:46 
 Signaler ce message aux modérateurs

Bonjour,

J aimerais savoir comment est ce qu on utilise les allocations dynamiques (malloc) sur des tableaux a deux dimensions . merci de bien vouloir m aider. La grace est trompeuse et la beaute est vaine

Meilleures réponses pour « Langage C (malloc et free) » dans :
Langage C++ - Les types de données Voir Les types de données Les données manipulées en langage C++, comme en langage C, sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître...
Langage C - Les chaînes de caractères Voir Qu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...
Les files en langage C VoirLes files - Premier Entré Premier Sorti Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la file IV. Opérations sur les files A. Initialisation B. Insertion d'un élément dans la file C. Oter un...
Les piles en langage C VoirLes piles Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la pile IV. Opérations sur les piles A. Initialisation B. Insertion d'un élément dans la pile C. Ôter un élément de la pile D. Affichage...
[Langage C] C/C++ Erreur de segmentation VoirQu'est ce qu'une erreur de segmentation Vous êtes en train de développer une application sous Linux en C/C++. Tout va bien, ça compile, les oiseaux chantent. Donc vous lancez votre application pour la tester. Et vous obtenez l'un de ces deux...
Langage C - Les types de données VoirLes types de données Les données manipulées en langage C sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître l'occupation mémoire (le...
Langage C - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C sont typées, c'est-à-dire que les données contenues dans...

1

fiddy, le 11 mar 2009 à 00:36:51

Salut,

const int lig=5;
const int col=5;

//initialisation
int **tab=malloc(lig*sizeof *tab);
for(int i=0;i<lig;i++)
    tab[i]=malloc(col*sizeof **tab);

//libération des zones allouées
for(int i=0;i<lig;i++)
    free(tab[i]),tab[i]=NULL;
free(tab),tab=NULL;


Par ailleurs, n'oublie pas de vérifier que malloc ne renvoie pas NULL.

Cdlt
Google is your friend

Répondre à fiddy

2

simyamsmasters, le 11 mar 2009 à 00:54:57

S il te plait excuse moi de te deranger une fois de plus mais c est sans aucune modestie que je dirais que je ne comprends rien a ton code. Je t'emprie explique moi comment il fonctionnne. Merci bien
La grace est trompeuse et la beaute est vaine

Répondre à simyamsmasters

3

fiddy, le 11 mar 2009 à 01:20:14

Salut,
Tout d'abort, pour comprendre comment fonctionne malloc :
http://rperrot.developpez.com/articles/c/allocationC/

Ensuite, si t'as encore des questions sur mon code, n'hésite pas.
Google is your friend

Répondre à fiddy

4

 simyamsmasters, le 11 mar 2009 à 21:02:38

Merci beaucoup
j ai bien appris grace a ton. Bye

La grace est trompeuse et la beaute est vaine

Répondre à simyamsmasters