/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
FOR i underprocedure
Fra : Tom


Dato : 28-07-04 07:58

Jeg har lavet et meget simpelt program i Pascal 7.0 som er installeret under
Win2K

Når jeg kompilere det siger den:
Error 97: Invalid FOR control variable.
I for linien i proca1, hvorfor det ?
Når variablen a er erklæret i proceduren proca, burde den da godt kunne
bruges inde i en under procedure proca1, eller ?

Mvh
Tom

Program test;

Procedure proca;
var
a : word;

procedure proca1;
begin
for a := 1 to 10 do write;
end;

Begin
for a := 1 to 10 do write;
end;


Begin
end.



 
 
Ukendt (28-07-2004)
Kommentar
Fra : Ukendt


Dato : 28-07-04 08:03

"Tom" <rs_underscorefilex@post9.tele.dk> wrote in message
news:41074e6d$0$264$edfadb0f@dread14.news.tele.dk...
> Jeg har lavet et meget simpelt program i Pascal 7.0 som er installeret
under
> Win2K
>
> Når jeg kompilere det siger den:
> Error 97: Invalid FOR control variable.
> I for linien i proca1, hvorfor det ?

For-variable skal altid være lokale og din "a" er ikke lokal nok

Tilføj erklæringen af a inde i proca1.

En nyere version af delphi havde givet en lidt mere sigende fejlbesked.

hilsen
Uffe


Tom (28-07-2004)
Kommentar
Fra : Tom


Dato : 28-07-04 08:19


"Uffe Kousgaard" <look_at_www.routeware.dk> skrev i en meddelelse
news:41074fb1$0$178$edfadb0f@dtext01.news.tele.dk...
> "Tom" <rs_underscorefilex@post9.tele.dk> wrote in message
> news:41074e6d$0$264$edfadb0f@dread14.news.tele.dk...
> > Jeg har lavet et meget simpelt program i Pascal 7.0 som er installeret
> under
> > Win2K
> >
> > Når jeg kompilere det siger den:
> > Error 97: Invalid FOR control variable.
> > I for linien i proca1, hvorfor det ?
>
> For-variable skal altid være lokale og din "a" er ikke lokal nok
>
> Tilføj erklæringen af a inde i proca1.
>
> En nyere version af delphi havde givet en lidt mere sigende fejlbesked.
>
> hilsen
> Uffe
>

Tak for et hurtigt svar.
Jeg kunne ikke lige se det logiske i, at FOR ikke kunne bruge den "yderste"
variabel, og troede en overgang at der var "kage" i kompileren.

Mvh
Tom



Christian Iversen (29-07-2004)
Kommentar
Fra : Christian Iversen


Dato : 29-07-04 18:48

Tom wrote:

>
> "Uffe Kousgaard" <look_at_www.routeware.dk> skrev i en meddelelse
> news:41074fb1$0$178$edfadb0f@dtext01.news.tele.dk...
>> "Tom" <rs_underscorefilex@post9.tele.dk> wrote in message
>> news:41074e6d$0$264$edfadb0f@dread14.news.tele.dk...
>> > Jeg har lavet et meget simpelt program i Pascal 7.0 som er installeret
>> under
>> > Win2K
>> >
>> > Når jeg kompilere det siger den:
>> > Error 97: Invalid FOR control variable.
>> > I for linien i proca1, hvorfor det ?
>>
>> For-variable skal altid være lokale og din "a" er ikke lokal nok
>>
>> Tilføj erklæringen af a inde i proca1.
>>
>> En nyere version af delphi havde givet en lidt mere sigende fejlbesked.
>>
>> hilsen
>> Uffe
>>
>
> Tak for et hurtigt svar.
> Jeg kunne ikke lige se det logiske i, at FOR ikke kunne bruge den
> "yderste" variabel, og troede en overgang at der var "kage" i kompileren.

Den simple version af den tekniske forklaring er, at en ikke-lokal variabel
ikke er hurtig nok til at bruges i et FOR-loop.

Hvis du alligevel bruger Turbo Pascal kunne du jo overveje FreePascal
(www.freepascal.org). Det er en rigtig god compiler.

--
M.V.H
Christian Iversen

Christian Andersen (12-09-2004)
Kommentar
Fra : Christian Andersen


Dato : 12-09-04 13:16

Din FOR variabel skal være "lokal", for det må ikke være muligt at
at ændre den, i feks: procedure Write


Tom <rs_underscorefilex@post9.tele.dk> skrev:
>Jeg har lavet et meget simpelt
>program i Pascal 7.0 som er
>installeret under
>Win2K
>
>Når jeg kompilere det siger den:
> Error 97: Invalid FOR control variable.
>I for linien i proca1, hvorfor det ?
>Når variablen a er erklæret i
>proceduren proca, burde den da godt kunne
>bruges inde i en under procedure
>proca1, eller ?
>
>Mvh
>Tom
>
>Program test;
>
>Procedure proca;
>var
> a : word;
>
> procedure proca1;
> begin
> for a := 1 to 10 do write;
> end;
>
>Begin
> for a := 1 to 10 do write;
>end;
>
>
>Begin
>end.


Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste