C语言在地址相加的时候是不是一定要在前面加个DWORD
本帖最后由 dnf123021 于 2014-4-16 21:12 编辑PIMAGE_DOS_HEADER M_PImage_Dos_Harder=NULL;
PIMAGE_NT_HEADERS M_PImage_Nt_Headers=NULL;
M_PImage_Nt_Headers=PIMAGE_NT_HEADERS((DWORD)M_PImage_Dos_Harder+M_PImage_Dos_Harder->e_lfanew);
为什么在这句代码中一定要把M_PImage_Dos_Harder强制转换成DWORD类型,要是不转换相加后的地址就会出错,要是转换为WORD类型,得到的结果就是M_PImage_Dos_Harder->e_lfanew本身的值。是不是一个地址再相加另一个值时要先在那个地址前面强制转换为DWORD类型?这个问题是看了小甲鱼PE工具篇后的问题,实在搞不懂,求大虾解惑。
页:
[1]