如何将固定长度的Delphi字符串转换成使用宽字符的巨长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计359个文字,预计阅读时间需要2分钟。
在Delphi 2010(或D2009)下,默认字符串类型是UnicodeString。然而,如果我们声明如下:
delphiconst s : string='Test';ss : string[4]='Test';
则第一个字符串`s`如果声明为UnicodeString类型,而第二个字符串`ss`声明为固定长度字符串类型,其中第一个字符的声明方式是:
delphi'测试'
在Delphi 2010下(也可能在D2009下),默认字符串类型是UnicodeString.但是,如果我们宣布……
const s :string = 'Test'; ss :string[4] = 'Test';
…然后第一个字符串s如果声明为UnicodeString,但第二个ss声明为AnsiString!
我们可以检查一下:SizeOf(s [1]);将返回size 2和SizeOf(ss [1]);将返回大小1.
如果我宣布……
var s :string; ss :string[4];
…比我想要的ss也是UnicodeString类型.
>我如何告诉Delphi 2010这两个字符串应该是UnicodeString类型?
>我怎么能宣布ss拥有四个WideChars?编译器不接受类型声明WideString [4]或UnicodeString [4].
>对于相同类型名称,两个不同编译器声明的目的是什么:string?
如果你真的想要WideChar的固定长度数组,那么你可以简单地声明char的数组[1..n].
本文共计359个文字,预计阅读时间需要2分钟。
在Delphi 2010(或D2009)下,默认字符串类型是UnicodeString。然而,如果我们声明如下:
delphiconst s : string='Test';ss : string[4]='Test';
则第一个字符串`s`如果声明为UnicodeString类型,而第二个字符串`ss`声明为固定长度字符串类型,其中第一个字符的声明方式是:
delphi'测试'
在Delphi 2010下(也可能在D2009下),默认字符串类型是UnicodeString.但是,如果我们宣布……
const s :string = 'Test'; ss :string[4] = 'Test';
…然后第一个字符串s如果声明为UnicodeString,但第二个ss声明为AnsiString!
我们可以检查一下:SizeOf(s [1]);将返回size 2和SizeOf(ss [1]);将返回大小1.
如果我宣布……
var s :string; ss :string[4];
…比我想要的ss也是UnicodeString类型.
>我如何告诉Delphi 2010这两个字符串应该是UnicodeString类型?
>我怎么能宣布ss拥有四个WideChars?编译器不接受类型声明WideString [4]或UnicodeString [4].
>对于相同类型名称,两个不同编译器声明的目的是什么:string?
如果你真的想要WideChar的固定长度数组,那么你可以简单地声明char的数组[1..n].

