Last Updated:

Tipe Char dan String

Grup KPPDI
Grup KPPDI
AnsiCharKarakter berkuran 1 byte (8 bit)

type AnsiChar = #0..#255;

AnsiStringDeretan karakter AnsiChar. Panjang string bertipe AnsiString tidak terbatas, hanya dibatasi oleh besarnya memori (RAM).
AnsiString adalah sejenis pointer yang akan dialokasikan secara otomatis bila diperlukan (bila ada nilainya) dan otomatis dibuang dari memori jika tidak bernilai.
CharChar adalah tipe karakter seperti AnsiChar, namun sejak Delphi 2009 (Delphi 12), Char adalah WideChar, di mana ukurannya adalah 16bit (2 byte), menampung karakter ANSI maupun Unicode (multi-byte).
ShortStringShortString merupakan deretan karakter berukuran hingga 255 karakter. Tipe String di bawah ini akan diperlakukan sebagai ShortString jika directive $LongStrings diset ke OFF
StringString merupakan deretan karakter. Bila directive $LongStrings diset ke OFF, String akan diperlakukan sebagai ShortString, sebaliknya jika directive ini diset ke ON, String akan diperlakukan sebagai AnsiString.
Meskipun $LongStrings diset ke ON, sebuah string akan tetap diperlakukan sebagai ShortString jika kita menentukan FixedSize pada sebuah string.

var
shortstr: String[5];
{
mendefiniskan sebuah variabel bertipe ShortString dengan panjang string maksimal 5 karakter.
}
longstr: String[260];
{
error! ShortString hanya dapat menampung maksimal 255 karakter!
}
WideCharKarakter dengan ukuran 16 bit, untuk menampung karakter Unicode. Pada Delphi 2009 (mungkin versi selanjutnya juga), Char diperlakukan sebagai WideChar.
WideStringString yang terbentuk dari deretan karakter bertipe WideChar. Tiap elemennya berukuran 16 bit.
Bila Anda mempunyai kode:

var
  ws: WideString;
  l,
  sz: Integer;
begin
  ws:='Hello World!';
  l:= Length(ws);
  sz:=SizeOf(widechar) * l;
  ShowMessage('Panjang String: '+InttoStr(l)+#13+
              'Ukuran String (memori): ' +IntToStr(sz)
  );

Maka Anda akan mendapatkan hasil:
image

Comments