CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

为什么出错(在线等候)?

楼主pdsinfo(新手)2002-04-12 20:44:11 在 Delphi / VCL组件开发及应用 提问

 
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var   s:array   of   byte;  
  begin  
          SetLength(s,3);  
          s[0]:=1;         s[1]:=2;         s[2]:=3;  
          showmessage(IntToStr(SizeOf(s)));   //为何显示4???  
          FillChar(s,2,0);   //为何出错?  
          Setlength(s,0);  
  end; 问题点数:40、回复次数:7Top

1 楼chechy(www.qdocuments.net)回复于 2002-04-12 22:11:33 得分 20

如果想知道动态数组的大小应该这样:  
  High(s)   -   Low(s)   +   1  
  FillChar只能用于字符串数组,如果是动态数组,我觉得应该这样:  
  FillChar(s[0],   2,   0);    
  动态数组清空请用:  
  s   :=   nil;Top

2 楼Fuxiao(X老师)回复于 2002-04-12 22:36:49 得分 5

会不会是下标从1开始呢?Top

3 楼chechy(www.qdocuments.net)回复于 2002-04-12 22:37:22 得分 0

应该都是从0开始。Top

4 楼cplusc(5i海洋)回复于 2002-04-12 23:25:32 得分 5

var   s:array   of   byte;  
   
  SizeOf(s)--------------s   是   指针  
  所以     =4  
   
     
  Top

5 楼zhboy(孔方兄)回复于 2002-04-12 23:59:13 得分 5

是从1开始的,这是Delphi的String的一个特点,Top

6 楼zhboy(孔方兄)回复于 2002-04-13 00:01:27 得分 0

sorry,看错了Top

7 楼Alphen(正在学习VC)回复于 2002-04-13 01:40:10 得分 5

没有什么可将了Top

相关问题

  • 高分求救!!为什么我采取升级方式安装rpm时老是出错!(在线等候,解决了马上给分100)
  • 宏运行时出错,在线等候,急...
  • 宏运行时出错,在线等候,急....
  • 调用dll出错,请人解答,在线等候
  • 急,一个关于运行出错的问题?在线等候
  • 在线等候解答--一个sql语句的出错(100分)
  • 求救:插入数据记录出错,在线等候
  • Delphi调用TADOStoredProc出错的问题,在线等候
  • 有关java出错的问题,在线等候
  • 为什么出错?

关键词

  • fillchar
  • 动态数组

得分解答快速导航

  • 帖主:pdsinfo
  • chechy
  • Fuxiao
  • cplusc
  • zhboy
  • Alphen

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo