begin process at 2012 05 29 23:28:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

Libération de la mémoire allouée au préalable avec la fonction malloc.


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

Libération de la mémoire allouée au préalable avec la fonction malloc.

samedi 17 juillet 2010 à 18:59:39 | Libération de la mémoire allouée au préalable avec la fonction malloc.

lectpe

Bonjour.

J'ai une question à propos de la libération de mémoire allouée au préalable avec la fonction malloc.

Si j'alloue une chaîne de caractères ainsi :
char *szv = (char *)malloc(200*sizeof(char));

et que par la suite je décale son pointeur comme cela :
szv+=3;

est-ce que lors de la libération de la mémoire allouée je dois faire :
free(szv-3);

ou dois-je faire tout simplement free(szv) ?

En espérant une réponse de votre part, je vous en remercie d'avance.

Greg.
samedi 17 juillet 2010 à 19:35:18 | Re : Libération de la mémoire allouée au préalable avec la fonction malloc.

TychoBrahe

Réponse acceptée !
Salut,

Il faut faire free(szv-3); comme tu l'as dit en premier lieux. Un conseil si tu dois décaler ton pointeur de la sorte : créé un second pointeur pointant vers la même zone mémoire mais que tu ne modifiera pas, comme ça tu garde dans un coin l'addresse à passer à free :

Code C/C++ :
  char *szv = (char *)malloc(200*sizeof(char));
  char *plop = szv;

  szv += 3; /* toutes les modifs que tu veux */
  free(plop);
samedi 17 juillet 2010 à 21:43:43 | Re : Libération de la mémoire allouée au préalable avec la fonction malloc.

lectpe

D'accord, je vais faire comme ça.

Merci beaucoup.


Cette discussion est classée dans : mémoire, libération, malloc, allouée, szv


Répondre à ce message

Sujets en rapport avec ce message

libération de mémoire allouée [ par moloko2000 ] Je me trouve confronté à un petit problème d'allocation mémoire.En fait je dois rapatrier une base de données de 90000 enregistrements et en fait à ch Probleme d'allocation de mémoire dynamique (malloc/free) [ par PhantomPowaa ] Bonjour,J'ai un petit probleme avec les fonctions malloc et free dans certains de mes programmes. Apparement le malloc s'effectue correctement, mais a Libération de la mémoire [ par norton ] Bonjour à tous,Je me suis demandé si en mettant le code "exit(1);" pour quiter un programme ca libère toute la mémoire que le programme utilise ?? Ou Question sur l'allocation de mémoire... [ par kod32 ] Salut,j'ai une question concernant l'allocation de mémoire et notamment l'utilisation de la fonction malloc. Cette fonction permet de pointer vers un Libération de la mémoire en utilisation GetIfTable [ par christophelande ] Salut, j'utilise l'API GetIfTable pour récupérer des infos sur les interfaces réseau de mon PC. J'utilise la même méthode décrite ici : http://www.cpp Creation fonction malloc [ par LordBob ] Bonjour a tous,voila en cours on est en train de faire un TP sur la gestion de la mémoire et on doit programmer la fonction malloc. Pour la partie thé taille de libération mémoire [ par mezaya ] Bonjour, Je voudrai savoir si il existe un moyen de récuperer la taille mémoire que va libérer la fonction free ? Voila en faite j'aimerai surcharge Pb d'allocation mémoire malloc [ par oz80 ] Bonjour à tous, j'ai un problème d'allocation de mémoire je pense. Je déclare une variable comme ceci : <TBOD malloc (ms vc++) [ par DeadlyPredator ] Bonjour,J'ai une fonction:char*  _fastcall strLeft(const char* lpszString, const long nLength) { char* lpszBuffer; lpszBuffer=(char*)malloc(nLength+1) FMOD libération de la mémoire.... [ par MorbhAck ] Bonsoir a tous !J'amerai savoir comment on libère le mémoire avec FMOD.Je suis en train de faire un Chipdisk (une sorte de Jukebox)et le problème c'es


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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 : 0,733 sec (4)

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