POVID pDIB;
BITMAPINFO* m_pBMI;
m_pBMI = (BITMAPINFO*)pDIB;
DWORD size = *(DWORD*)pDIB;
那位高手能解释下第3行和第四行意思。关键是(BITMAPINFO*)pDIB这么表示我不明白。
能把第一行第二行说了更好。
BITMAPINFO* m_pBMI;
m_pBMI = (BITMAPINFO*)pDIB;
DWORD size = *(DWORD*)pDIB;
那位高手能解释下第3行和第四行意思。关键是(BITMAPINFO*)pDIB这么表示我不明白。
能把第一行第二行说了更好。
前面再加上一个*表示取指针地址存储的对象
PVOID Pointer to any type. 无类型指针,可以指向任何类型的指针m_pBMI = (BITMAPINFO*)pDIB; 把pDIB强制转换为(BITMAPINFO*)
2、m_pBMI指向一个位图的数据块
3、将pDIB强制转换为位图指针并复制为m_pBMI
4、获取数据块的第一个DWORD值,在这里就是位图头结构的大小
DWORD size = *(DWORD*)pDIB
pDIB在转换成DWORD* ,再取指针指向的对象