jak uźywać procedurki 'val'

0

prosze o pomoc w wyjaśnieniu mi używania procedurki val prosze o szybką odpowiedź ważne

0

O ile chodi o tom samom procedurke to chyba :

Val (s :string, n :Integer, k :Integer);

s : co ma przetworzyc;
n : gdie ma zwrocic wartosc;
k : zmienna kontrolna, tak sobie, ja osobiscie nie uzywalem nigdy...

np
kce miec w zmiennej Ilosc wartosc z edita:

var
s :string;
n,k :Integer;

W programie :

s:=Edit1.Text;
Val(s,n,k);

I już...
Ale moge sie mylic...--Delphi 4

Skysh The God, Your Slave

0

Poprawka, oczywiscie jeszcze linia:

Ilosc:=n;--Delphi 4

Skysh The God, Your Slave

0

Ray Lischner w Delphi.Almanach poleca uzywanie funcji z SysUtils (np StrToInt, StrToFloat) zamiast Val bo Val olewa ustawienia separatora dziesietnego Windy. Z drugiej strony (to moje zdanie) funcje z SysUtils wywala sie jesli w Stringu bedzie nieliczba, a Val nie - tylko w k bedzie pozycja w s na ktorej cos sie nie zgodzilo. --Pawel

Delphi6

0

Nio wlasnie. StrToInt, ale jak nie int to caly program poleci. Zwykle nie interesuje nas, gdie sie wywalilo, ale lepiej zeby sie nie wywalalo. Val zwraca zero i jest po klopocie.--Delphi 4

Skysh The God, Your Slave

0

Mozna sprawdzic przedtem czy int. To troche zachodu, ale pare razy spotkalem programy ktore sie wywalaly bo nie sprawdzaly separatora. Bardzo mnie to wkurzalo, a moj komp jest dobrym testem bo mam ustawienia na Polske ale separator kropke. Z trzeciej strony mozna uzyc Val, a jak bedzie niezero to skontrolowac czy sie aby nie wywalilo na kropce/przecinku i jesli tak, to podmienic i sprobowac znow. Ale znowu w niektorych ustawieniach jest nie tylko separator dziesietny ale i separator tysiecy. Ogolnie zawsze jest skomplikowanie. Gdzie te czasy wczesnego DOSa albo ZX Spectrum, gdzie byla kropka i koniec dyskusji...--Pawel

Delphi6

0

jest jeszcze oczywiscie funkcja StrToIntDef ktora ma dwie wartosci text i integer i gdy nie mozna skonwertowac stringa na integera to jako wynik przypisuje wartosc drugiego parametru czyli integera :)--Zuk

1 użytkowników online, w tym zalogowanych: 0, gości: 1