getstrfromint.inc

来自「tDBF is new ver, this is BDS 2007 insta」· INC 代码 · 共 39 行

INC
39
字号
  if Width <= 0 then
    exit;

  NegSign := Val < 0;
  Val := Abs(Val);
  // we'll have to store characters backwards first
  I := 0;
  repeat
    Temp[I] := Chr((Val mod 10) + Ord('0'));
    Val := Val div 10;
    Inc(I);
  until (Val = 0) or (I = Width);
  // add spaces
  J := Width - I;
  FillChar(Dst^, J, PadChar);
  // add sign
  if NegSign then
  begin
    if PadChar = '0' then
    begin
      Dst[0] := '-';
    end else begin
      if J = 0 then
      begin
        // need one character for sign, shorten
        Inc(J);
        Dec(I);
      end;
      Dst[J - 1] := '-';
    end;
  end;
  // copy value, stored backwards
  repeat
    Dec(I);
    Dst[J] := Temp[I];
    Inc(J);
  until I = 0;
  // done!

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?