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

Delphi 的字符及字符串[

Delphi 的字符及字符串[1] - string、AnsiString、WideString、String[n]、ShortString
2008-10-17 14:57:17
//最常用的 string
var
  str: string;   {定义}
begin
  str := '万一'; {赋值}
  ShowMessage(IntToStr(Length(str))); {长度是: 4}
end;
//长字符串 AnsiString; 在当前版本(2007)中的默认状态下, String 就是 AnsiString
var
  str: AnsiString;
begin
  str := '万一';
  ShowMessage(IntToStr(Length(str))); {长度是: 4}
end;
//宽字符串 WideString (效率不及 AnsiString)
var
  str: WideString;
begin
  str := '万一';
  ShowMessage(IntToStr(Length(str))); {长度是: 2}
end;
//定长字符串
var
  str1: String[6]; {指定大小不能超过 255}
  str2: String[100];
begin
  {少给了也会占那些内存}
  str1 := '万一';
  ShowMessage(str1);                   {万一}
  ShowMessage(IntToStr(Length(str1))); {4; 这是字符串的长度}
  ShowMessage(IntToStr(SizeOf(str1))); {7; 这是占内存大小}
  {多给了会被截断}
  str1 := '万一的 Delphi 博客';
  ShowMessage(str1);                   {万一的}
  ShowMessage(IntToStr(Length(str1))); {6; 这是实际保存的字符串长度}
  ShowMessage(IntToStr(SizeOf(str1))); {7; 这是占内存大小}
  {问题: 不是声明大小为 6 吗? 怎么 SizeOf 是 7 ? }
  {因为定长字符串会多出一个首字节来记忆字符串的实际长度}
  {举例说明, 如果给 str2 按如下赋值, 那它的首字节(str2[0])肯定储存着字符 'A'}
  str2 := 'iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii'; {65个}
  ShowMessage(str2[0]);                {A}
  ShowMessage(IntToStr(Ord(str2[0]))); {65; 这是 'A' 在 ASCII 序列中的序号, 用的就是它}
  {那以后可以用 Ord(str2[0]) 来代替 Length 判断字符串的长度吗? }
&n


相关文档:

DELPHI用户登录方案

3.2  用户登录方案
在进入一个系统时,必须先在登录窗体中输入正确的用户名和密码才能进入。这样可以确保系统的安全性和保密性,登录窗体的制作按照系统的大小及用处,可以分为不同的登录窗体样式,在系统第一次登录前,首先要对操作员信息进行相应的设置。本节将对登录窗体及操作员管理窗体的制作过程进行详细的说明 ......

在delphi中判断字符串是否数字,以及精度处理函数

// 判断是否是数值型   By yangxiao  2007.7.21
function isNumeric(strText: WideString): Boolean;
var
  s: string;
  i, l, p: Integer;
begin
  Result := False;
  l := Length(strText);
  if l = 0 then Exit;
  s := '';
  for i:=1 to l do
  ......

用delphi制作OCX库文件(一)

开发步骤:
1、创建ActiveX Library工程。
2、创建COM Object。
3、创建Type Library,并创建相应接口。
4、创建接口对应的函数和实现。
具体如下:
1、创建ActiveX Library工程。
new|other|activeX|activeX library
Delphi会自动生成框架代码,直接编译的话就可以得到一个dll文件了;
如果想编译出来的是ocx文 ......

用delphi制作OCX库文件(三)

开发步骤:
1、创建ActiveX Library工程。
2、创建COM Object。
3、创建Type Library,并创建相应接口。
4、创建接口对应的函数和实现。
具体如下:
3、创建Type Library,并创建相应接口。
view|type library
找到已经生成的type library,其实和TLB文件是对应的。
我们可以看到上一步生成的对象也含在里面。
我 ......

字符串、PChar与字符数组之间的转换(delphi)

设有以下三个变量:
var
  s:string;
  p:pchar;
  a:array[1..20] of char;
那么三者之间的转换如下:
1、字符串到PChar
    p:=PChar(s);
2、PChar到字符串
    s:=p;
3、PChar到字符数组
    StrCopy(@a,p);
4、字符数组到PChar
   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号