请问如何判断一个变量是inaccessible value呢? 发现它不是nil,不知道怎么判断 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 每次使用前先初始化, 定义后别忘记赋初值.还有一种方法, 判断是否合法(仅供参考):var dwStart, dwAddr, dwEnd: Longword;begin // 用内嵌汇编取变量的起始和末尾地址 asm mov dwStart, ebp lea eax, <变量名> mov dwAddr, eax lea eax, dwEnd mov dwEnd, eax end; // 根据变量的地址来判断是否合法 if dwAddr < dwEnd then // 变量一般为有问题 else if dwAddr < dwStart then // 变量是一个本函数的局部变量 else if dwAddr = dwStart then // 变量肯定有问题, 因为此值为函数的开始处 else if dwAddr < dwStart + ParamSize then // 变量为传值参数 else // 变量为本函数外的变量end; fastreport控件问题,请高手帮忙! TcxDateEdit格式问题 excel中的特殊字符在ACCESS中不识别的问题 请教高手,如何用程序修改BDE的属性? 请问哪里有Delphi4下载? 如何得知当前操作系统是否支持双字节? MDI窗体问题(菜鸟问) 如何在窗体关闭时判断某条件,不满足时不让窗体退出? 想赚钱的请进 调用api实现关机、重启、黑屏、鼠标控制的问题 求一加密算法对1到100的数字加密,加密后的结果仍为数字(因为要放入数据库)普通的字符串加密好像不行 多谢了 菜鸟问题:怎样获得程序当前目录
var
dwStart, dwAddr, dwEnd: Longword;
begin
// 用内嵌汇编取变量的起始和末尾地址
asm
mov dwStart, ebp
lea eax, <变量名>
mov dwAddr, eax
lea eax, dwEnd
mov dwEnd, eax
end; // 根据变量的地址来判断是否合法
if dwAddr < dwEnd then
// 变量一般为有问题
else if dwAddr < dwStart then
// 变量是一个本函数的局部变量
else if dwAddr = dwStart then
// 变量肯定有问题, 因为此值为函数的开始处
else if dwAddr < dwStart + ParamSize then
// 变量为传值参数
else
// 变量为本函数外的变量
end;