dwordc語言
Ⅰ c語言中有沒有dword、word、byte數據類型啊,糾結
dword是int
word是short
byte是char
Ⅱ C語言有沒有DWORD數據類型
C語言沒有DWORD數據類型
DWORD數據類型是windows定義的數據類型,不是標准c中的數據類型。
C 語言包含的數據類型如下圖所示:
DWORD 就是 Double Word, 每個word為2個位元組的長度,DWORD 雙字即為4個位元組,每個位元組是8位,共32位。
可以如下自定義DWORD:
typedef unsigned int DWORD;
Ⅲ 請問c語言中這句是什麼意思 *(DWORD *)&a[4 * b] ^= c
這就按照字面逐漸分析即可:
DWORD是一個宏,應該是一種無符號整數的數據類型,具體含義自己到頭文件中查找。
核心部分是a,a的右端是取數組指定下標中的元素(4*b號元素),取出來之後再對該元素取地址,變成一個指針,把該指針強制轉換成DWORD型指針,然後對其解引用,也就是按照DWORD指定的大小取出數組a中4*b位置的內容,最後對該內容跟c進行異或,結果再寫回到數組中原來的位置。
Ⅳ C語言中DWORD-12是什麼意思
c語言中DWORD 就是 Double Word, 每個word為2個位元組的長度,DWORD 雙字即為4個位元組,每個位元組是8位,共32位。
DWORD-12就是以雙字的形式表示-12的值。
在Visual C++ 6.0中,BYTE與WORD,DWORD本質上都是一種無符號整型,它們在WINDEF.H中被定義,定義如下:
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;
也就是說BYTE是無符號的char型(char型本質上也是一種1個位元組的整型),WORD是無符號short型,DWORD是無符號long型。
而在Visual C++ 6.0中,char型長度為1位元組,short型長度為2位元組,int和long型長度都為4位元組,因此可以認為BYTE與WORD,DWORD定義的變數分別獲得了1位元組,2位元組,4位元組內存,正與BYTE與WORD,DWORD的字面意義相符。
即:BYTE=unsigned char(完全等同)
WORD=unsigned short(完全等同)