易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi中move函数的用法

我们能看到以下代码
var pSource,pDest:PChar;
     len: integer;
.......................//一些代码
Move(pSource,pDest,len); //错误
Move(pSource^,pDest^,len); //正确
看起来确实好像是传值,而不是传地址,但是各位别忘了,这不是C,C++,而是Delphi
Object Pascal,所以,绝不能从函数调用的方法判断是传值还是串地址!!必须看函数的
定义,只有定义才能说明是传值还是传地址,再说一遍,这不是C,C++!!
我们看到的函数定义是这样的
procedure Move(const Source; var Dest; Count: Integer);
从定义上看,很清楚,Dest是传地址,而不是传值,那么Source呢,其实大家不太清楚
这里的Const修饰符有两个含义,第一个大家都知道就是Source一常量方式在函数体内,
不可以改变它的值,第二个可能知道的人不多,那就是Source的传递方式和Dest一样,
是传地址!也就是说const和var一样,都是传地址,只不过一个在函数内不允许修改,
另一个是修改后影响调用的变量值
所以Move是传地址,而恰恰不是传值!
Move(const   Source;   var   Dest;   Count:   Integer);  
  Source   and   Dest都是指向一个首地址,  
  如  
  var                                                                 首地址  
      P:   Pointer;                                                P^  
      P:   PChar            &


相关文档:

Delphi的Socket编程要分几步?

Delphi的Socket编程要分几步?
2008-12-20 02:03:24
 标签:Delphi Socket 编程   [推送到技术圈]
ClientSocket 和ServerSocket
几个重要的属性:   
1.client和server都有port属性,需要一致才能互相通信   
2.client有Address属性,使用时填写对方(server)的IP地址  & ......

delphi日期函数


  
Day 开头的函数

Unit
DateUtils
function DateOf(const Avalue: TDateTime): TDateTime;
描述
使用 DateOf 函数用来把一个 TDateTime 类型的变量转变成一个
只带有日期的 TDateTime 类型变量。
例如:
showmessage(DateTimetostr(dateof(now())));
你得到的是 2003/03/19
而 showmessage(Dat ......

淘宝平台开发 delphi 示例

淘宝开放平台的开发例子大多都是c#,php,java等,缺少Pascal的例子。
现用delphi写了一个示例,
关键点是签名的生成,签名需按key字母顺序排序,并去掉等于号后首尾相连。
关键代码:
 memstr:= TMemoryStream.Create;
 //用授权码获取 session
  IdHTTP1.Get('http://container.api.tbsandbox.com/c ......

Delphi to Excel 一些方法

一)   使用动态创建的方法   
  
  首先创建   Excel   对象,使用ComObj: 
  var   ExcelApp:   Variant; 
  ExcelApp   :=   CreateOleObject(   'Excel.Application'  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号