From Clomosy Docs

No edit summary
No edit summary
Line 1: Line 1:
function StrToIntDef(const IntegerString string; Default Integer):Integer;
<div class="alert alert-ligth border border-3 border-primary-subtle rounded-5 p-4 shadow-sm" role="alert">
function StrToIntDef(const S: string; Default: Integer):Integer;
</div>


The StrToIntDef function converts an Integer string, IntegerString such as '100' into an Integer value, with a Default if the conversion fails.<br>
The StrToIntDef function converts an Integer string, S such as '100' into an Integer value, with a Default if the conversion fails.<br>


It supports +ve and -ve numbers, and hexadecimal numbers, as prefixed by $ or 0x.<br>
It supports +ve and -ve numbers, and hexadecimal numbers, as prefixed by $ or 0x.<br>


'''Example:'''<br>
<b>Example</b><br>
<b>TRObject Syntax</b><br>
<pre>
var
  firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
{
  firstNumber = 32;
  secondNumber = StrToIntDef('test00', 10);  // Leading blanks are ignored
  thirdNumber = StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
  fourthNumber = StrToIntDef('-0x1E', 0);  // ... or with a '0x'
  ShowMessage('firstNumber : '+IntToStr(firstNumber));
  ShowMessage('secondNumber : '+IntToStr(secondNumber));
  ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
  ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
}
</pre>
<b>Base Syntax</b><br>
<pre>
var
  firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
begin
  firstNumber := 32;
  secondNumber := StrToIntDef('test00', 10);  // Leading blanks are ignored
  thirdNumber := StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
  fourthNumber := StrToIntDef('-0x1E', 0);  // ... or with a '0x'
  ShowMessage('firstNumber : '+IntToStr(firstNumber));
  ShowMessage('secondNumber : '+IntToStr(secondNumber));
  ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
  ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
end;
</pre>


:'''Base Syntax'''
<b>Output:</b><br>
<div class="alert alert-success" role="alert" data-bs-theme="light">
firstNumber : 32<br>
secondNumber : 10<br>
thirdNumber : 30<br>
fourthNumber : -30<br>
</div>


  var
<h2> See Also </h2>
    firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
* [[System_Library#Type_Conversion_Functions | Type Conversion Functions]]
 
  begin
 
    firstNumber := 32;
    secondNumber := StrToIntDef('test00', 10);  // Leading blanks are ignored
    thirdNumber := StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
    fourthNumber := StrToIntDef('-0x1E', 0);  // ... or with a '0x'
 
    ShowMessage('firstNumber : '+IntToStr(firstNumber));
    ShowMessage('secondNumber : '+IntToStr(secondNumber));
    ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
    ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
 
  end;
 
:'''TRObject Syntax'''
  var
    firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
 
  {
 
    firstNumber = 32;
    secondNumber = StrToIntDef('test00', 10);  // Leading blanks are ignored
    thirdNumber = StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
    fourthNumber = StrToIntDef('-0x1E', 0);  // ... or with a '0x'
 
    ShowMessage('firstNumber : '+IntToStr(firstNumber));
    ShowMessage('secondNumber : '+IntToStr(secondNumber));
    ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
    ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
 
  }
 
'''Output:'''<br>
firstNumber : 32
secondNumber : 10
thirdNumber : 30
fourthNumber : -30

Revision as of 14:10, 8 October 2024

The StrToIntDef function converts an Integer string, S such as '100' into an Integer value, with a Default if the conversion fails.

It supports +ve and -ve numbers, and hexadecimal numbers, as prefixed by $ or 0x.

Example
TRObject Syntax

 var
   firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
 
 {
 
   firstNumber = 32;
   secondNumber = StrToIntDef('test00', 10);  // Leading blanks are ignored
   thirdNumber = StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
   fourthNumber = StrToIntDef('-0x1E', 0);  // ... or with a '0x'
 
   ShowMessage('firstNumber : '+IntToStr(firstNumber));
   ShowMessage('secondNumber : '+IntToStr(secondNumber));
   ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
   ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
 
 }

Base Syntax

 var
   firstNumber,secondNumber, thirdNumber, fourthNumber : Integer;
 
 begin
 
   firstNumber := 32;
   secondNumber := StrToIntDef('test00', 10);  // Leading blanks are ignored
   thirdNumber := StrToIntDef('$1E', 0);    // Hexadecimal values start with a '$'
   fourthNumber := StrToIntDef('-0x1E', 0);  // ... or with a '0x'
 
   ShowMessage('firstNumber : '+IntToStr(firstNumber));
   ShowMessage('secondNumber : '+IntToStr(secondNumber));
   ShowMessage('thirdNumber : '+IntToStr(thirdNumber));
   ShowMessage('fourthNumber : '+IntToStr(fourthNumber));
 
 end;

Output:

See Also