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.
    
  • 相关阅读:
    ul>li中自定义属性后取值的问题
    img标签src图片地址找不到显示默认图片
    jquery通配符说明
    jquery控制元素的显示与隐藏
    mysql中行转列与列传行的问题
    页面禁止滚动条
    HttpServletRequest继承字ServletRequest的常用方法
    系统间通信方式
    mysql函数积累
    java 用maven 构建项目时@Override错误的解决办法
  • 原文地址:https://www.cnblogs.com/del/p/1328326.html
Copyright © 2011-2022 走看看