Manipulation de variables

Résolu/Fermé
pierrotlecelte Messages postés 4 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 7 janvier 2008 - 28 avril 2005 à 13:55
pierrotlecelte Messages postés 4 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 7 janvier 2008 - 28 avril 2005 à 16:29
Bonjour bonjour,

Je voudrais pouvoir manipuler les bits d'un integer.

Je sais, par ex, que :

int var;
var.1 = 1;

correspond à mettre le deuxieme bit de la variable var de type int à 1, sans toucher aux autres bits de cette meme variable.


Maintenant je voudrais savoir si on peut passer le numéro de bit à traiter, en argument; de cette maniere par ex:

int var;
bit a;

for (i=0,;i<16; i++) {
var.i = a;
}

Bon cette ecriture ci ne fonctionne pas en fait, donc je voudrais savoir si premierement c'est possible et comment l'ecrit on ?

J'espere ne pas avoir été trop brouillon dans mes explications.

Merci
A voir également:

2 réponses

Pour manipuler les bits il faut utiliser les décalages.
Pour donc exemple ça donnerait :

int var=1; // la variable à modifier
int positionbit=1; // la position du bit à modifier
var |= positionbit << 1; // on fait var OU (une chaine de zéro avec just ele bit positionbit à 1)

Je sais pas si ça t'éclaire mais ça fonctionne bien comme ça. Opération logique + décalages.
0
pierrotlecelte Messages postés 4 Date d'inscription mercredi 20 avril 2005 Statut Membre Dernière intervention 7 janvier 2008
28 avril 2005 à 16:29
Super !! Merci de ton aide !!

J'ai utilisé ta méthode avec les opérateurs logiques + décalages (non sans mal d'ailleurs, je suis novice :-) !! ) et ca marche nickel !!

Merci beaucoup
0