函数地址的小问题(很简单 在线等)
日期:2006-04-05 荐:
函数地址的小问题(很简单 在线等)在自己的程序里有一个自定义的函数Max:function Max(a:integer;b:integer):Boolean;begin ...end;怎么得到Max的地址 并把他转化成DWORD 就象 var a,b:DWORD;a:=Max函数的地址; b:=a 5;edit1.text:=inttostr(b);刚学DELPHI 不会写 请大虾帮下忙啊DWORD(@Max)这样:var a:^word;//定义一个WORD型指针begin a:=@max; edit1.text:=inttostr(a^);end;我已经试过了。delphi7,没问题。好象不对吧 下面得出来的是 1793887061 把他化成16进制 根本就不象 用OD看了看 'i love you so much333333333!!!!!!!!!'; 这个字符串大概在 0044F04F 这个地方 那么Max这个函数的地址也应该在这个范围左右啊????? function Max(a:integer;b:integer):Boolean;var s:string;begin s:='i love you so much333333333!!!!!!!!!'; result:=true;end;procedure TForm1.Button1Click(Sender: TObject);var a:^DWORD;//定义一个WORD型指针 s:string;begin s:='i love you so much!!!!!!!!!'; a:=@max; edit1.text:=inttostr(a^); messagebox(0,'kk','oo',MB_OK);end;楼上的是猪。鉴定完毕,最好重新去上大学。字符串存放在那里?常量存放在程序的数据区,变量存放在堆。这个具体的例子中,引用的是字符串指针,存放在栈中。
标签: