Bonjour,
est ce qu'un unsigned int serait exactement la meme chose qu'un DWORD en C?
Merci
Version imprimable
Bonjour,
est ce qu'un unsigned int serait exactement la meme chose qu'un DWORD en C?
Merci
Sous windows le typedef de DWORD correspond unsigned long.
Windef.h :
Comme "int" et "unsigned int" sont dépendant du système il est difficile de donner une taille.Code:
1
2 typedef unsigned long DWORD;
Sous Windows en tout cas, unsigned int et DWORD occupent le même espace mémoire, à savoir 32bits soit 4 octets.
La fourchette va donc de 0 à 4,294,967,295.
Il ne faut donc pas généraliser sur la taille des types, tout dépend de la plateforme cible.
Aucune idée. DWORD n'est pas du C standard. Si c'est du Windows, le bon forum est "Développement Windows".Citation:
Envoyé par zbooon
C'est pour cette raison que microsoft à définie d'autres types.Citation:
Envoyé par Neitsa
DWORD = entier non signé sur 32 bits.
alors que ce n'est pas garantie avec unsigned long.
Mais comme le dit Emmanuel, ce type n'est pas standard, on ne devrait s'en servir que pour utiliser l'API win32 ou .NET.
DWORD n'appartient pas au langage C (ni au C++ d'ailleurs).Code:
1
2
3
4
5
6
7 #include <stdio.h> int main (void) { DWORD entier = 2; /* erreur de compilation */ printf ("%d\n",entier); return 0; }
Par convention, un mot en majuscules est généralement un typedef
vaut mieux le réserver exclusivement aux API WIN32