begin process at 2012 05 28 19:36:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

[Debutant C ] Modifier un bit dans une variable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[Debutant C ] Modifier un bit dans une variable

jeudi 15 avril 2004 à 13:54:59 | [Debutant C ] Modifier un bit dans une variable

GentooUser

Salut,

Voila j'ai une variable de type BYTE (unsigned char) donc 8bits, et j'aimerai pouvoir définir à 1 ou 0 chaque bits de la variable independement.

Pour les lires j'utilise une macro #define BIT(v, i) ((v) & (0x80 >> (i)) ? 1 : 0 qui marche
Mais pour les ecrires ?



--------------------------------------------------------------------------------
Microsoft: Créateur de bugs depuis 1978
jeudi 15 avril 2004 à 14:11:24 | Re : [Debutant C ] Modifier un bit dans une variable

BruNews

Administrateur CodeS-SourceS
OR (|) ou bien AND (&).

ciao...
BruNews, Admin CS, MVP Visual C++
jeudi 15 avril 2004 à 14:43:03 | Re : [Debutant C ] Modifier un bit dans une variable

GentooUser

C'est ce que je fait

#define SET_BIT(v, b) (v) = ((v) & 0xFFFF) | (1 << (b)) pour definir un bit à 1 et ca marche, mais pour le mettre à 0 c'est plus dur.

Pour mettre à 0 le sixième bit par exemple, si j'utilise un masque 0xFFF8, ça marche mais ça efface aussi les bits 7 et 8


-------------------------------------------------------------------------------------------------
Microsoft: Créateur de bugs depuis 1978
jeudi 15 avril 2004 à 14:46:55 | Re : [Debutant C ] Modifier un bit dans une variable

BruNews

Administrateur CodeS-SourceS
var |= value;

ciao...
BruNews, Admin CS, MVP Visual C++
jeudi 15 avril 2004 à 15:21:41 | Re : [Debutant C ] Modifier un bit dans une variable

GentooUser

Desolé je dois être un gros boulet mais j'y arrive pas :(

Y'a pas un lien sur un cour bien expliqué sur le sujet ?


--------------------------------------------------------------------------------
Microsoft: Créateur de bugs depuis 1978
jeudi 15 avril 2004 à 15:24:24 | Re : [Debutant C ] Modifier un bit dans une variable

BruNews

Administrateur CodeS-SourceS
Mais te suffit d'enlever le masque AND que tu fais au debut.
Ce AND masque les bits, n'a donc rien a faire ici.

ciao...
BruNews, Admin CS, MVP Visual C++
jeudi 15 avril 2004 à 16:35:04 | Re : [Debutant C ] Modifier un bit dans une variable

GentooUser

J'ai essayé :
#define SET_BIT(v, b, x) (v) = ((v) |= (x) << (b))
Mais toujour le même pb (ça marche pour mettre le bit à 1, mais pas à 0)

Merci quand même


--------------------------------------------------------------------------------
Microsoft: Créateur de bugs depuis 1978
jeudi 15 avril 2004 à 16:42:30 | Re : [Debutant C ] Modifier un bit dans une variable

BruNews

Administrateur CodeS-SourceS
normal, regarde la table de BOOL.
Pour mettre a ZERO c'est le AND avec un mask, ce que tu avais mis precedemment.

ciao...
BruNews, Admin CS, MVP Visual C++
jeudi 15 avril 2004 à 17:17:30 | Re : [Debutant C ] Modifier un bit dans une variable

GentooUser

BruNews -> Merci ça marche

BjarneStroustrup -> no comment...



--------------------------------------------------------------------------------
Microsoft: Créateur de bugs depuis 1978


Cette discussion est classée dans : variable, modifier, debutant, bit


Répondre à ce message

Sujets en rapport avec ce message

récupérer chaque bit d'une variable binaire [ par nixon666 ] BJJe me pause une question dans un programme de supervision utilisant le language C : pour ceux qui connaissent il s'agit du programme WinCC. Dans ce modifier le nb de bit par pixel [ par Adeon ] Salut, ca va faire presque un an que je programme en api et je commence tout juste a comprendre le vrai fonctionnement des bitmaps. avant je fesais de question debutant sur un pb de tableau [ par skyman272 ] j'ai 5 variable char qui s'appelle : membre1                                  &nb Modifier une variable environnement user ? [ par chuckboy ] BonjourLa question est dans le titre !J'ai une variable d'environnement utilisateur que j'aimerais modifier à partir mon programme comment puis-je fai [DEBUTANT C] Modifier fichier texet [ par JeanMarcP ] BonjourJ'ai besoin, sur un vieux PC sous DOS, de modifier un fichier texte de la façon suivante :Entre les 23ème et 24ème virgule, je dois ajouter le donnee type double [ par totoscill ] Bonjour, Je dois manipuler des données de type double mais je ne sais pas du tout comment est géré un type double (à part qu'il est codé sur 64 bit a passage par reference [ par jfk20004 ] je ne comprends pas le principe qui consiste à pouvoir modifier une variable par un passage par reference.Une variable n'est elle pas comme son nom le Changer la valeur d'une variable dans un exe [ par scolinks ] Salut,Je me demandait si c'est possible de changer la valeur d'une variable qui se trouve dans un exe...Par example dans mon exe j'ai:int s;s = 5;</ calul de timing sur com Rs232 (VC++ et asm) [ par oliviez123 ] bonjour voila mon problèmeje voudrai connaitre (par mesure) le temp entre 2 byte reçu:Déclencher un compteur sur le stop bit et l'arreter sur le star Pb d'écriture en binaire (fichier [ par paulo46 ] Bonjour,le problème se passe lorsque je veux modifier une entree dans le fichier (entrée sous la forme d'une struct).Le fichier est constitué de la mê


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales