obtenir la taille de la mémoire libre...

obtenir la taille de la mémoire libre... - C++ - Programmation

Marsh Posté le 15-03-2003 à 18:20:44    

Bonjour.
Comment ont peut obtenir la taille de la mémoire libre en c?
 
C'est pour vérifier que mon programme rend bien toute la mémoire qu'il a allouer?

Reply

Marsh Posté le 15-03-2003 à 18:20:44   

Reply

Marsh Posté le 15-03-2003 à 18:28:38    

Code :
  1. int memlibre=0;
  2. while(1)
  3. {
  4. malloc(1);
  5. memlibre++;
  6. }
  7. printf("oups, c'etait %d",memlibre-1);

Reply

Marsh Posté le 15-03-2003 à 18:33:16    


 
ban :o


Message édité par kadreg le 15-03-2003 à 18:33:25

---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 15-03-2003 à 18:33:26    

nico168 a écrit :

Code :
  1. int memlibre=0;
  2. while(1)
  3. {
  4. malloc(1);
  5. memlibre++;
  6. }
  7. printf("oups, c'etait %d",memlibre-1);

 


 
En effet, mais ca risque pas de prendre un peu de temps...
et faudrait quand même tester le retour de malloc ;)


Message édité par elrond le 15-03-2003 à 18:34:13
Reply

Marsh Posté le 15-03-2003 à 18:42:41    

De tout façon, ça ne marche pas comme ça. Meme si tu as 2 octets libres, cela ne veux pas dire que tu as le droit de faire 2 fois malloc(1). C'est même pratiquement certain que ça ne marche pas.

Reply

Marsh Posté le 15-03-2003 à 18:47:41    

Kristoph a écrit :

C'est même pratiquement certain que ça ne marche pas.


 
Je viens d'essayer sur ma tuxette, à part rendre la machine hyper lente (load de 40), de faire bosser le disque dur comme un goret pour swapper, ça ne fait pas grand chose de passionnant :)
 
Pour traquer les fuites mémoire, il faut mieux utiliser un logiciel fait pour ça. Valgrind sous linux ou purify sous windows.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 15-03-2003 à 18:54:12    

bien sur que ca ne marche pas.
c'etait tres inspiré d'une fortune que je ne retrouve plus.

Reply

Marsh Posté le 15-03-2003 à 19:01:41    

cat /proc/meminfo

Reply

Marsh Posté le 15-03-2003 à 19:01:42    

nico168 a écrit :


c'etait tres inspiré d'une fortune que je ne retrouve plus.


 
[:neowen]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 15-03-2003 à 20:04:03    

++Taz a écrit :

cat /proc/meminfo


Merci ++Taz, c'est une bien meilleur idée :)
mais c'est étrange qu'il n'y ait pas de fonction en C.
Je me souviens de mes premiers prog en turbo pascal, yavait une fonction qui retourner la taille... :/

Reply

Marsh Posté le 15-03-2003 à 20:04:03   

Reply

Marsh Posté le 15-03-2003 à 20:16:28    

ben je vais chercher plus sérieusement, mais des mes premiers résultats, beaucoup de programmes vont lire dedans

Reply

Marsh Posté le 15-03-2003 à 20:16:46    

Elrond a écrit :


Merci ++Taz, c'est une bien meilleur idée :)
mais c'est étrange qu'il n'y ait pas de fonction en C.


Bien sur que ca existe, mais c'est dépendant du système. Va demande ca sur fr.comp.lang.c++ et tu vas te faire insulter :-)

Reply

Marsh Posté le 15-03-2003 à 20:21:48    

kenshiro182 a écrit :


Bien sur que ca existe, mais c'est dépendant du système. Va demande ca sur fr.comp.lang.c++ et tu vas te faire insulter :-)
 

personne a dit le contraire. et jusqu'a preuve du contraire on parle de C ici.

Reply

Marsh Posté le 15-03-2003 à 21:31:23    

Sous Win32 : GlobalMemoryStatus


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed