有深入研究异常处理的吗try except
有深入研究错误处理的吗try except
建立个程序 代码如下
program Project1;
uses
windows,
// SysUtils,
Messages;
var
I:DWORD;
begin
try
I:=dword(Pointer($00000)^);
except
MessageBox(0,PChar('error'),PChar('error'),0);
end;
MessageBox(i,PChar('ok'),PChar('ok'),0);
end.
读到的是空指针,一定出错,不过 在去掉SysUtils单元后,错误处理机制失效! 不知道为什么,错误处理机制调用了SysUtils哪些函数或者定义??? 能否不用SysUtils也能成功处理错误呢? 高人请解答!
------解决方案--------------------
SysUtils有初始化进程,包括异常处理的代码,如果你不去截获系统异常,就报不出来。
建立个程序 代码如下
program Project1;
uses
windows,
// SysUtils,
Messages;
var
I:DWORD;
begin
try
I:=dword(Pointer($00000)^);
except
MessageBox(0,PChar('error'),PChar('error'),0);
end;
MessageBox(i,PChar('ok'),PChar('ok'),0);
end.
读到的是空指针,一定出错,不过 在去掉SysUtils单元后,错误处理机制失效! 不知道为什么,错误处理机制调用了SysUtils哪些函数或者定义??? 能否不用SysUtils也能成功处理错误呢? 高人请解答!
------解决方案--------------------
SysUtils有初始化进程,包括异常处理的代码,如果你不去截获系统异常,就报不出来。