chaine littérale : peut-on libérer son espace mémoire ?
3 réponses
(°-°)
Bonjour,
Lorsque dans un pgm je défini des chaines littérales
comme ceci :
#include <stdlib.h>
int main(void) {
const char *pChaine_1 = "La chaine numero 1";
const char *pChaine_2 = "La chaine numero 2";
const char *pChaine_3 = "La chaine numero 3";
return EXIT_SUCCESS;
}
c'est l'implémentation qui va réserver les zones
mémoires pour y ranger ces chaines, mais en cours de programme
je n'ai pas la possibilité de libérer l'espace mémoire occupé par,
par exemple, pChaine_1 ??
Cela ne se fera qu'à la fin du pgm ?
C'est l'OS qui libérera cette espace mémoire ?
Merci d'avance
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
DINH Viêt Hoà
Lorsque dans un pgm je défini des chaines littérales
"écrire 'pgm' au lieu de 'programme', c'est pas un problème d'orthographe, c'est un problème de capillarité palmaire" -- ed
comme ceci :
#include <stdlib.h>
int main(void) {
const char *pChaine_1 = "La chaine numero 1"; const char *pChaine_2 = "La chaine numero 2"; const char *pChaine_3 = "La chaine numero 3";
return EXIT_SUCCESS; }
Cela ne se fera qu'à la fin du pgm ? C'est l'OS qui libérera cette espace mémoire ?
En fait, dans la plupart des implémentations, les chaînes sont stockées dans un espace mémoire qui va rester le même du début à la fin du programme et cet espace sera libéré en même temps que le programme terminera.
Dans quel but voudrais-tu pouvoir les libérer ?
-- DINH V. Hoa,
"T'aurais pas une question sur le langage C" -- Emmanuel Delahaye
Lorsque dans un pgm je défini des chaines littérales
"écrire 'pgm' au lieu de 'programme', c'est pas un problème d'orthographe,
c'est un problème de capillarité palmaire" -- ed
comme ceci :
#include <stdlib.h>
int main(void) {
const char *pChaine_1 = "La chaine numero 1";
const char *pChaine_2 = "La chaine numero 2";
const char *pChaine_3 = "La chaine numero 3";
return EXIT_SUCCESS;
}
Cela ne se fera qu'à la fin du pgm ?
C'est l'OS qui libérera cette espace mémoire ?
En fait, dans la plupart des implémentations, les chaînes sont stockées
dans un espace mémoire qui va rester le même du début à la fin du
programme et cet espace sera libéré en même temps que le programme
terminera.
Dans quel but voudrais-tu pouvoir les libérer ?
--
DINH V. Hoa,
"T'aurais pas une question sur le langage C" -- Emmanuel Delahaye
Lorsque dans un pgm je défini des chaines littérales
"écrire 'pgm' au lieu de 'programme', c'est pas un problème d'orthographe, c'est un problème de capillarité palmaire" -- ed
comme ceci :
#include <stdlib.h>
int main(void) {
const char *pChaine_1 = "La chaine numero 1"; const char *pChaine_2 = "La chaine numero 2"; const char *pChaine_3 = "La chaine numero 3";
return EXIT_SUCCESS; }
Cela ne se fera qu'à la fin du pgm ? C'est l'OS qui libérera cette espace mémoire ?
En fait, dans la plupart des implémentations, les chaînes sont stockées dans un espace mémoire qui va rester le même du début à la fin du programme et cet espace sera libéré en même temps que le programme terminera.
Dans quel but voudrais-tu pouvoir les libérer ?
-- DINH V. Hoa,
"T'aurais pas une question sur le langage C" -- Emmanuel Delahaye
(°-°)
"écrire 'pgm' au lieu de 'programme', c'est pas un problème d'orthographe, c'est un problème de capillarité palmaire" -- ed
C'est pour économiser les touches de mon clavier...
Dans quel but voudrais-tu pouvoir les libérer ?
C'était juste pour savoir si c'était possible ou non de libérer cet espace.
"écrire 'pgm' au lieu de 'programme', c'est pas un problème d'orthographe,
c'est un problème de capillarité palmaire" -- ed
C'est pour économiser les touches de mon clavier...
Dans quel but voudrais-tu pouvoir les libérer ?
C'était juste pour savoir si c'était possible ou non de libérer cet espace.