Malloc spécial ...

Signaler
Messages postés
25
Date d'inscription
mercredi 11 avril 2007
Statut
Membre
Dernière intervention
6 avril 2008
-
Messages postés
25
Date d'inscription
mercredi 11 avril 2007
Statut
Membre
Dernière intervention
6 avril 2008
-
Bonjours a tous .

Je me posait recemment une question qui est en rapport avec la gestion de la ram ...

Ben en fait je voudrait savoir si il était possible avec ,un malloc ou une structure de creer un nouveau type de variable , je m'explique .

La variable que je voudrait creer serait d'une taille spéciale dans la ram ... tel la variable long peut aller jusqu'au chiffre 1 237000000
la varible ... cacaboudin ... pourait aller du chiffre 1 a 100 ...

J'espere que vous comprendrez .

Merci .

// dsl pour " cacaboudin " j'était VRAIMENT en paanne d'inspiration ...

A+

10 réponses

Messages postés
653
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
10 novembre 2014
2
Si c'est juste pour une valeur comprise entre 0 et 100 autant utiliser un usigned char

#define MonType unsigned char

MonType test;
test = 150;

tu peux aussi utiliser typedef
Messages postés
280
Date d'inscription
dimanche 7 septembre 2003
Statut
Membre
Dernière intervention
8 juillet 2014
4
salut

oui c'est à ça que servent les structures, et les malloc serviront plus si tu as vraiment besoin de beaucoup ou si tu ne sais pas à l'avance la taille de la chose que tu veux créer

mais à part ça ta question n'est pas claire (sais tu bien ce que sont les struct et malloc

et si tu as juste besoin d'une librairie pour gérer les grands nombres je te conseille gmp
Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
4
Vaux mieux dire mémoire virtuelle que RAM au passage parce que le programmeur n'a pas accès à la RAM matérielle.
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
On dit mémoire, tout simplement, dans la plupart des cas.

C++ (@++)<!--
Messages postés
25
Date d'inscription
mercredi 11 avril 2007
Statut
Membre
Dernière intervention
6 avril 2008

d'abord bonjour ,

enfait , je me suis mal fait comprendre ...

je voudrait savoir de quoi est faite la structure long et comment creer une nouvelle structure similaire mais moins importante niveau memoire ... 
enfait la structure long peut stoker UN nombre entre -1 000 000 000 et 1 000 000 000.
si je voudrait que ma structure puisse stocker par ex au maximum UN nombre entre -10 et 10 .

et par ex :

si je creer une structure :

   unsigned char valeur ;
}

ou alors :

long valeur;

pour appeller la variable valeur il y a:

structure valeur;

qq_chose = valeur.valeur;
 
mais dans le cas de long on fait seulement

long valeur;

qq_chose = valeur;

moi je voudrai que :

structure valeur;

qq_chose = valeur;

comment faire pour remedier a ce probleme.

J'espere que vous m'avez compris.

si vous m'avez pas compris , donnez moi juste le code de la structure long .

sinon Merci et Bonne continuation

A+ tt le monde
Messages postés
653
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
10 novembre 2014
2
long est un type, pas une structure

Je vois pas vraiment pourquoi tu veux faire une structure avec ca mais bon..

#define MaStruct struct MASTRUCT
struct MASTRUCT
{
unsigned long Valeur;
};

int main(void)
{
MaStruct test;
test.Valeur = 150;
printf("%i", test.Valeur);
system("PAUSE");
return 0;
}

Neo_Fr
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Lis un livre de C avant tout. Je crois que tu ne comprend pas très bien certains concepts.

En passent, un long en C fait 32 bits donc il va de 0x0 à 0xFFFFFFFF (0 à 4294967295 non signé)

C++ (@++)<!--
Messages postés
25
Date d'inscription
mercredi 11 avril 2007
Statut
Membre
Dernière intervention
6 avril 2008

excusez moi pour mon expliquation un peu confuse ... oui je voudrait creer un type ...

pas une structure ...

d'abord est'ce possible .

 si oui comment faire ...

 si non dsl Néo Fr je n'avait pas compris ton 1 post ... ça répond a ma question ... en fait je voulait modifier le type char  pour qu'il prenne moin de place en mémoire ... mais sa me convien finalement trés bien comme sa ...

Pour finir, Merci a tous ceux qui m'on répondu et bonne continuation a tout le monde . 
Messages postés
653
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
10 novembre 2014
2
Le type char ne prend qu'1 octet de memoire
tu peux stoquer du -127 a 127, sinon utilise unsigned char 0 a 255(1 octet ossi)

Neo_Fr
Messages postés
25
Date d'inscription
mercredi 11 avril 2007
Statut
Membre
Dernière intervention
6 avril 2008

d'accor merci pour le rens sa s ' éclaircie peu a peu dans ma tete.