Łańcuchy » Konwersje

TryStrToInt64

TryStrToInt64
Moduł: SysUtils

function TryStrToInt64(const S: string; out Value: Int64): Boolean;

Funkcja sprawdza, czy wartość łańcuchową (określona w parametrze S) można przekonwertować do wartości typu int64. Jeżeli operacja konwersji zakończy się sukcesem, funkcja zwróci wartość True, a w parametrze Value znajdzie się przekonwertowana wartość.

Wyobraź sobie sytuację, w której należy przekonwertować do postaci typu int64 liczbę, którą użytkownik wpisze w oknie konsoli. Korzystając z funkcji StrToInt narażamy się ryzyko wykonania nieprawidłowej operacji - użytkownik, specjalnie lub nie - może w konsoli wpisać nieprawidłową wartość (np. zmiennoprzecinkową lub tekstową). Możemy się do tego przygotować obsługując wyjątek:

try
  I := StrToInt64(S);
except
  Writeln('Podano nieprawidłową wartość');
end;


Możemy też skorzystać z funkcji TryStrToInt64:

program Foo;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  S : String;
  I : Int64;
begin
  Write('Podaj wartość liczbową, całkowitą: ');
  Readln(S);
 
  if not TryStrToInt64(S, I) then
  begin
    Writeln('Wartość nieprawidłowa!');
  end else
  begin
    Writeln('Wartość: ', Sqr(i));
  end;
  Readln;
end.


W powyższym przykładzie, jeżeli użytkownik poda prawidłową wartość - otrzymana liczba zostanie podniesiona do potęgi.

Zobacz też: