例:
var
msgbuf:array[0..4095] of byte;
stackbuf:pointer;
msglen:integer;
begin
.....
....
msglen:=integer(sendbuf[0]+(sendbuf[1] shl 8));
getmem(stackbuf,msglen);
move(msgbuf[0],stackbuf^,msglen);
tmpstr:=inttostr(integer(stackbuf));
showmessage(tmpstr);
...
end;
显示的为什么不对呢?是不是inttostr(integer(stackbuf));写错了呢?
请大家帮帮忙,谢谢大家!!!!
var
msgbuf:array[0..4095] of byte;
stackbuf:pointer;
msglen:integer;
begin
.....
....
msglen:=integer(sendbuf[0]+(sendbuf[1] shl 8));
getmem(stackbuf,msglen);
move(msgbuf[0],stackbuf^,msglen);
tmpstr:=inttostr(integer(stackbuf));
showmessage(tmpstr);
...
end;
显示的为什么不对呢?是不是inttostr(integer(stackbuf));写错了呢?
请大家帮帮忙,谢谢大家!!!!
解决方案 »
- 本人是程序员,想开一家软件公司请教各位出点意见.如何定位,如何经营,谢谢!主要是有关行业数据库的(针对中小型零售企业)
- 用modem编程,如何用at命令来识别是否忙音??
- 请问各位大侠哪里有DELPHI或者VC的视频教学片下呢?如知道,麻烦相告。
- 如何读取txt的内容并将其写在image的canvas上,最后保存成bmp图片?
- 请教高手分不够现场加
- ClientDataSet中的数据保存到excel文件中.
- 求教,怎样在DBGRID中实现象EXCEL一样的多行插入式粘贴或块粘贴?真的没有好办法吗!!
- 我用delphi和sql server 2000
- 这样的sql语句怎么写?
- 第三遍了,关于TNMFTP的timeout属性,连接ftp服务器的问题,大家帮帮忙
- 拜托,哪位高手指点一下
- 怎样将其它应用程序中添加一个菜单并可以执行程序?
这样显示的是指针指向的地址.
如果需要指向的地址的内容需要
tmpstr:=inttostr(pinteger(stackbuf)^);
pinteger的声明应该在sysutils中。估计你已经uses了。
另外,写成这样好看点
TmpStr := IntToStr(PInteger(StackBuf)^);
move(msgbuf[0],stackbuf^,msglen);
改为:move(stackbuf^,msbuf,msglen);
这句吧指针的内容传给了数组msgbuf,
如果你传得是ascii码,需要把数组的byte型数据用char()转变为字符。把字符加起来就是字符串了