Malloc spécial ...

cs_Vinsininounet Messages postés 25 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 6 avril 2008 - 2 sept. 2007 à 20:01
cs_Vinsininounet Messages postés 25 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 6 avril 2008 - 3 sept. 2007 à 20:19
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

Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
2 sept. 2007 à 20:11
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
0
acx01b Messages postés 280 Date d'inscription dimanche 7 septembre 2003 Statut Membre Dernière intervention 8 juillet 2014 6
2 sept. 2007 à 20:12
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
0
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
2 sept. 2007 à 21:10
Vaux mieux dire mémoire virtuelle que RAM au passage parce que le programmeur n'a pas accès à la RAM matérielle.
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
2 sept. 2007 à 21:14
On dit mémoire, tout simplement, dans la plupart des cas.

C++ (@++)<!--
0

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

Posez votre question
cs_Vinsininounet Messages postés 25 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 6 avril 2008
3 sept. 2007 à 19:44
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
0
Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
3 sept. 2007 à 20:05
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
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
3 sept. 2007 à 20:08
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++ (@++)<!--
0
cs_Vinsininounet Messages postés 25 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 6 avril 2008
3 sept. 2007 à 20:15
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 . 
0
Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
3 sept. 2007 à 20:17
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
0
cs_Vinsininounet Messages postés 25 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 6 avril 2008
3 sept. 2007 à 20:19
d'accor merci pour le rens sa s ' éclaircie peu a peu dans ma tete.
0
Rejoignez-nous