CharLower 與 CharUpper 對應,支援單字符、字符常量、字符數組、AnsiString 四種參數形式,就地修改或返回轉換指針。
procedure TForm1.Button1Click(Sender: TObject); {單字符變量}
var C: Char;
begin C := 'A'; C := Char(CharLower(PChar(C))); ShowMessage(C); end; {a}
procedure TForm1.Button2Click(Sender: TObject); {字符常量}
var C: Char;
begin C := Char(CharLower(PChar('A'))); ShowMessage(C); end; {a}
procedure TForm1.Button3Click(Sender: TObject); {字符數組}
var Arr: array[0..2+1] of Char;
begin Arr := 'ABC'; CharLower(Arr); ShowMessage(Arr); end; {abc}
procedure TForm1.Button4Click(Sender: TObject); {AnsiString}
var str: string;
begin str := 'ABC'; CharLower(@str[1]); ShowMessage(str); end; {abc}
procedure TForm1.Button5Click(Sender: TObject); {對比 Delphi 原生 LowerCase}
var str: string;
begin str := 'ABC'; str := LowerCase(str); ShowMessage(str); end; {abc}
總結: WinAPI CharLower/CharUpper 針對 ANSI 字符串;Delphi LowerCase/UpperCase(SysUtils)支援 Unicode,現代項目建議優先使用原生函數。