Type DWORD en C/C++ c'est quoi???
Résolu/Fermé
little_titi
Messages postés
242
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
23 novembre 2009
-
7 oct. 2008 à 10:16
crazydieter - 2 août 2016 à 22:30
crazydieter - 2 août 2016 à 22:30
3 réponses
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
7 oct. 2008 à 10:54
7 oct. 2008 à 10:54
DWORD, ça doit être double mot, ça correspond à une variable d'un certain nombre d'octet ou de bit.
Je crois que le mot et de 4 octet, le double mot doit être de 8.
ça sert à connaître la taille de la variable indépendamment de l'implémentation du C.
Je crois que le mot et de 4 octet, le double mot doit être de 8.
ça sert à connaître la taille de la variable indépendamment de l'implémentation du C.
Bonjour
Quand un mot comme DWORD n'est pas du C standard, c'est qu'il est défini dans un .h quelconque. Il suffit de faire un clic droit sur DWORD et de choisir "GOTO definition of DWORD".
VC++ t'envoie dans windef.h à la ligne :
typedef unsigned long DWORD;
Quand un mot comme DWORD n'est pas du C standard, c'est qu'il est défini dans un .h quelconque. Il suffit de faire un clic droit sur DWORD et de choisir "GOTO definition of DWORD".
VC++ t'envoie dans windef.h à la ligne :
typedef unsigned long DWORD;
little_titi
Messages postés
242
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
23 novembre 2009
7
7 oct. 2008 à 11:56
7 oct. 2008 à 11:56
Oki merci ! je viens de regarder ce que tu m'as dis, effectivement on peut le voir comme ça!
Juste pour la forme... Octet : 1 octet. Ca va jusque là ?
Word : 2 octets.
DWord : 4 octets.
D : Double
Aucun rapport avec les applications Windows.
Et pour le reste, il y a google. Pas la peine de coder si vous êtes incapables de savoir ça, ni de réussir à le chercher dans le cas contraire.
Word : 2 octets.
DWord : 4 octets.
D : Double
Aucun rapport avec les applications Windows.
Et pour le reste, il y a google. Pas la peine de coder si vous êtes incapables de savoir ça, ni de réussir à le chercher dans le cas contraire.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
2 janv. 2012 à 11:23
2 janv. 2012 à 11:23
Truth,
Je ne suis pas d'accord avec toi. De plus si tu lis bien John n'a pas dit que DWORD faisait 2 octets, mais il a dit 4.
Je rajoute mon complément :
DWORD n'est pas natif en C, c'est un type défini dans le header windows.h. Il peut valoir un unsigned long, mais pas forcément, cela pourrait être pourquoi pas unsigned long long (en C99). De plus, on ne parle pas d'octet pour un type mais plutôt de byte (sachant qu'en C, les bytes font au moins 8 bits).
La taille du DWORD, dépend donc de pas mal de critères.
Je ne suis pas d'accord avec toi. De plus si tu lis bien John n'a pas dit que DWORD faisait 2 octets, mais il a dit 4.
Je rajoute mon complément :
DWORD n'est pas natif en C, c'est un type défini dans le header windows.h. Il peut valoir un unsigned long, mais pas forcément, cela pourrait être pourquoi pas unsigned long long (en C99). De plus, on ne parle pas d'octet pour un type mais plutôt de byte (sachant qu'en C, les bytes font au moins 8 bits).
La taille du DWORD, dépend donc de pas mal de critères.
Vu que DWORD est défini dans windows.h, je vois mal comment il pourrait être utilisé dans un système où un byte ne fait pas 8 bits... En fait, c'est juste un héritage du temps où le C devait s'adapter à beaucoup de processeurs différents et exotiques, mais aujourd'hui un processeur avec un byte différent de 8 bits c'est assez rare...
@Truth
1 bit [fr/eng] != 1 octet [fr] == 1 byte [eng] == 8 bits
Et ce, peu importe la machine. Ce n'est qu'une question de langage mais c'est quand même important si on veut bien se faire comprendre.
C'est le coup classique. A force, on ne sait même plus de quoi on parle...
@Hugooguh
Je suis d'accord.
1 bit [fr/eng] != 1 octet [fr] == 1 byte [eng] == 8 bits
Et ce, peu importe la machine. Ce n'est qu'une question de langage mais c'est quand même important si on veut bien se faire comprendre.
C'est le coup classique. A force, on ne sait même plus de quoi on parle...
@Hugooguh
Je suis d'accord.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
20 sept. 2012 à 22:37
20 sept. 2012 à 22:37
Anonymous,
Non byte n'est pas égal à octet...
Non byte n'est pas égal à octet...
7 oct. 2008 à 11:13
J'ai vu ke DWORD était similaire à longWord qui était un mot de 32 bits non signé. et je pense aussi que le D correspond à double comme tu dis. Apparemment ces types sont utilisés dans le cadre d'application pour windows. enfin d'après ce que j'ai cru comprendre.
Merci pour l'info!@ bientot!