约有 18 项符合查询结果, 以下是第 2 - 2项。
费时 < 1 秒。
“23.10~23.12节...”应为“23.11~23.12节...”
因为23.10节讲的是“准页堆”并不是CRT堆。
Posted in 《软件调试》的示例程序
by
icommander
on 2009-08-03
1.清单22-8 FuncB中的szTemp没有显式用'\0'结尾。于是第5行的printf可能显示更长的字符串。
2.用esp寻址在vc2008,gcc中不可见。但可以通过下面的方式手工来验证。
__declspec(naked) void FuncB(char* szPara)
{
char szTemp[5]={0}; <-下断点,检查esp+4是否等于szPara
strncpy(szTemp, szPara,sizeof(szTemp)-1);
}
Posted in 《软件调试》的示例程序
by
icommander
on 2009-07-30
582页第12行 栈是朝低地址方向生长的。
583页第3行 因为栈是向下生长的。
58X页 ...低地址方向生长的...
表达没错,但表述不一致。第二个表述不清晰。
Posted in 《软件调试》的示例程序
by
icommander
on 2009-07-29
1.第8行AllocStk应为AllcStk,因为示例中只有AllcStk.exe
2.第12行的“键入kv..”(清单22-2)。可是清单22-2中显示的命令是“knL”。内容与书上差别巨大。
0:000> knL # ChildEBP RetAddr 00 0012e4b4 7c8104a0 kernel32!BaseCreateStack01 0012e8f8 7c810665 kernel32!CreateRemoteThread+0x6602 0012e91c 77dc8c74 kernel32!CreateThread+0x1e03 0012e94c 77dc8a44 ADVAPI32!WmipEstablishEventPump+0x1a304 ...
Posted in 《软件调试》的示例程序
by
icommander
on 2009-07-28