zoukankan      html  css  js  c++  java
  • WinAPI 字符及字符串函数(13): lstrcmp、lstrcmpi 对比串

    lstrcmp 区分大小写; lstrcmpi 不区分大小写. 返回值: -1、0、1, 其中 0 表示相同.
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        Button4: TButton;
        Button5: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
        procedure Button4Click(Sender: TObject);
        procedure Button5Click(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    const
      Msgs: array[-1..1] of Char = ('<', '=', '>');
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
      p1,p2: PChar;
      n: Integer;
    begin
      p1 := 'A';
      p2 := 'B';
    
      n := lstrcmp(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {A < B}
    
      n := lstrcmpi(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {A < B}
    end;
    
    procedure TForm1.Button2Click(Sender: TObject);
    var
      p1,p2: PChar;
      n: Integer;
    begin
      p1 := 'A';
      p2 := 'a';
    
      n := lstrcmp(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {A > a}
    
      n := lstrcmpi(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {A = a}
    end;
    
    procedure TForm1.Button3Click(Sender: TObject);
    var
      p1,p2: PChar;
      n: Integer;
    begin
      p1 := 'ABC';
      p2 := 'abcd';
    
      n := lstrcmp(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {ABC < abcd}
    
      n := lstrcmpi(p1, p2);
      ShowMessageFmt('%s %s %s', [p1, Msgs[n], p2]); {ABC < abcd}
    end;
    
    {这和 Delphi 的 CompareStr、CompareText 区别还是很大}
    procedure TForm1.Button4Click(Sender: TObject);
    var
      p1,p2: PChar;
      n: Integer;
    begin
      p1 := 'A';
      p2 := 'a';
    
      n := CompareStr(p1, p2);
      ShowMessage(IntToStr(n)); {-32}
    
      n := CompareText(p1, p2);
      ShowMessage(IntToStr(n)); {0}
    end;
    
    {和 StrComp、StrIComp、StrLComp、StrLIComp 也不一样}
    procedure TForm1.Button5Click(Sender: TObject);
    var
      p1,p2: PChar;
      n: Integer;
    begin
      p1 := 'A';
      p2 := 'a';
    
      n := StrComp(p1, p2);
      ShowMessage(IntToStr(n)); {-32}
    
      n := StrIComp(p1, p2);
      ShowMessage(IntToStr(n)); {0}
    
      n := StrLComp(p1, p2, 1);
      ShowMessage(IntToStr(n)); {-32}
    
      n := StrLIComp(p1, p2, 1);
      ShowMessage(IntToStr(n)); {0}
    end;
    
    end.
    
  • 相关阅读:
    第四次课堂作业
    12周课后作业
    12周上机(5.21)
    11周周五课后作业
    11周上机作业(5.14)
    第十周(5.7)上机
    第九周4.30上机作业
    第八周周五课后作业
    4.23 第八周上机作业
    4.17课后作业
  • 原文地址:https://www.cnblogs.com/del/p/1328326.html
Copyright © 2011-2022 走看看