Comment voir la memoire q occupe une variable ou autre?

xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 - 3 avril 2004 à 16:38
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 - 7 avril 2004 à 14:44
salut je cherche a voir combien mon prog occupe de memoire.
y a t il un moyen pour voir combien de memoire utilise une variable,une structure ou un object?

15 réponses

cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
3 avril 2004 à 17:21
pour savoir combien ton prog occupe de memoire regarde avec le gestionnaire de tache

pour une variable, ce qui est different, tu a l'operateur sizeof
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
4 avril 2004 à 10:59
ok et avec la librairie memory.h y a des outils pour voir l etat de la memoire?
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
5 avril 2004 à 07:58
tu y trouvera juste des fonctions pour copier, initialyser et comparer des espaces memoire
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
5 avril 2004 à 18:15
ok merci beaucoup pour ta reponse c sympa ;)
mais la j ai un probleme,j ai une structure avec dedans
2 doublefloat,2 int,un bitmap et une chaine de charactere de 256.
lorsque que je teste une structure que j ai initialise avec mon moteur avec sizeof il m afiiche que ma structure fait 4octetc c normal?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
5 avril 2004 à 18:20
non ca l'est pas, peut etre que tu fais sizeof sur un pointeur ?

montre le bout de code correspondant
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
7 avril 2004 à 11:51
c bon j ai resolu le probleme desole de t avoir embette.
jutilisait sizeof comme ceci:sizeof (timmer+counter+refresh) :big)
opour que ca marche j utilise maintenant:sizeof(timer)+sizeof(counter)...avec ca il ne m affiche plus 4octet.
merci djil pour ton aide.

sinon quelqu un pourrai me donner des precision concernant les tableau de pointeurs en 2d,3d et la maniere de les initialiser.
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
7 avril 2004 à 12:09
juste pour revenir sur sizeof, vu que c'est un operateur, on l'utilise communement comme ca:
sizeof var
sizeof(type)

bien sur si tu le fait dans une operation un peu longue tu pe utiliser les parantheses pour garantir sa priorite, mais fait plutot (sizeof timer)+(sizeof counter)..., mais c'est juste une question d'ecriture

pour un tableau de pointeur, ben sa depend, c'est un peu vague, donne un debut de code pour voir

parce que ca pourrait etre int *t[100], int **t, int *t[100][100] ...
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
7 avril 2004 à 12:54
he bien j ai deja cree des tableau dynamique de int en 3d( int ***matrix3D)mais en fait je voudrai faire un tableau de pointeur 2d avec une structure tile

ca donne ca
struct tiles{
bool passable;
BITMAP *bmp;
char descrip[256];
};
.

est ce qu il est possible de faire par exemple un tableau 3d
avec 1couche de pointeurs vers la structure tile et une couche avec des pointeurs vers la structure batiments?
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
7 avril 2004 à 13:10
tu ve dir cree un tableau 3d qui puisse contenir des tile ou des batiment ?

tu ve dire koi par tableau de pointeur 2d
int *t[...][...] ou int **t[...] ?

(desole si j'ai du mal a comprendre)
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
7 avril 2004 à 13:21
oui un tableau 3D qui peut contenir des batiment et des tiles...
desole je suis un nb en c++ j ai des probleme pour bien me faire comprendre :blush) .
un tableau 2d(int) on l'initialise comme ca:
int **tab;

int main()
{
tab=new *tab[Y];
for(i=0,i<Y,i++)
tab[Y]=new tab[X];//j espere que c comme ca que ca marche,c pour charger des maps en dyna puisqu on ne peut pas utiliser un tableau static :int tab[Y][X] 
return 0;
}


voila si je ne me suis pas tromper c comme ca que j initialise un tableau dynamique en 2d
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
7 avril 2004 à 13:43
oui c comme ca, oubli pas de liberé l'espace alloué

sinon ta le choix, utilise un tableau 2d de vector, un type union

autant utiliser une union pour faire ca

union contenu
{
Tile tile;
Batiment batiment;
};

...
contenu ***tab;
...
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
7 avril 2004 à 13:52
tu peut aussi faire void ****tab; mais t objets seront dynamique aussi
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
7 avril 2004 à 13:57
ouas ca a l air vachement bien les vector de la stl,tu sais ou je peux trouver plus d infos sur cela?
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
7 avril 2004 à 14:11
c assez simple si tu l'utilise comme un tableau

ya des tuto sur la stl comme source sur ce site
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
7 avril 2004 à 14:44
ok merci de ton aide c gentil.
0
Rejoignez-nous