1
while (tempdata > 5); //多写了一个分号..卧槽
{
std::cout << "hello world" << std::endl;
}
2
std::ifstream ifs(filePath);
IMAGE_DOS_HEADER* dosHeader = (IMAGE_DOS_HEADER*)(fileBuffer);
IMAGE_NT_HEADERS* ntHeader = (IMAGE_NT_HEADERS*)((char*)dosHeader + dosHeader->e_lfanew);
首先调试老断不下来,然后重新建立项目,复制黏贴之后有点错误.修改了点代码..
能断下来之后发现 ntheader 始终指向 e字符而不是p ..到最后才发现.
卧槽,我把 std::ios_base::binary | std::ios_base::in 删了..忘记改回去.
std::ifstream ifs(filePath , std::ios_base::binary | std::ios_base::in ); //正常应该是这样