3个回答
展开全部
var
p: pointer; //指针
begin
p:= pointer($5a307512); //强转指针
move('abc', p, 3); //移动数据
end;
p: pointer; //指针
begin
p:= pointer($5a307512); //强转指针
move('abc', p, 3); //移动数据
end;
追问
那个
move('abc',p,3)
这个三代表什么呀?
还有如果我想写进去一句话,也可以这样写吗?
move('喊话内容001测试',p,3)
这样也可以吗?
追答
3要移动的字节数,注字节数不一定等于字符数,要看编码而定。
可以,MOVE它不管你内容是什么,它只是把前一个指针指向的内存开始,拷到后一个指针指向的地方,拷多少由3那个参数指定。
move('喊话内容001测试',p,3) 这个3处要换成你这个字串的字节数量。
对于字符串的字节数,分A码与U码,A码很难处理,U码是一个字不管字母还是汉字都2字节。
所以,为方便,最好用DELPHI2010,它是U码的,你就可以
LENGTH()来获得字符串的长度,再*2,就是字节数了。
用D2010和以后的版本,都这样做,如果你还用D7之类,是A码,建议装2010吧
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将字符串转成字节型数组,然后再写入指针。
追问
能写个例子吗?怎么转成字节型数组?
怎么样写入指针?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
StrCopy(p, "abc");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询