江湖救急 类型转换问题 大家快来帮帮忙啊(100)

  • 主题发起人 主题发起人 Yang.SZ
  • 开始时间 开始时间
Y

Yang.SZ

Unregistered / Unconfirmed
GUEST, unregistred user!
大网上查的资料 mystring:='汉';word(mystring[1]) shl 8 + word(mystring[2]); 这样就能得到‘汉’这个字的内存地址得出的结果是十六进制的 可是我怎么显示出来啊??? 哪位有办法 帮帮忙吧
 
我现在只能得到而看不见啊 可是我想知道它是什么啊
 
兄台 这会这个真不对 我用 word(mystring[1]) shl 8 + word(mystring[2]) 得到的值是 例如: $C4C3 $C8BA一类的值 你给的那两个函数得出的不是这玩意 还有别的折吗???
 
你那个代码不是得到地址吧?要看地址就用下面的语句:ShowMessageFmt('%p', [@mystring]);要看你那个代码(好像是得到汉字的区位码)的内容就用:ShowMessageFmt('%d', [word(mystring[1]) shl 8 + word(mystring[2])]);
 
改为 ShowMessageFmt('%x', [word(mystring[1]) shl 8 + word(mystring[2])]); 即可。看来你是新手?
 
要得到结果就这么干:procedure TForm1.btnTestClick(Sender: TObject);var mystring: string; R: string;begin mystring := '汉'; R := IntToHex(Word(mystring[1]) shl 8 + Word(mystring[2]), 0); ShowMessageFmt('$%s', [R]);end;
 
呵 一直做ERP方面的 这个函数 太长时间没用了 忘了 实际上 贴子一发完我就想起来了 也是一上午一直想转换的问题 一直专牛角尖 想的有点呆了 谢谢了
 
后退
顶部