Du befinder dig her: Kom godt i gang med programeditoren > Kald mellem programmer

Kald mellem programmer

Programmer kan kalde hinanden som en subrutine. Subrutinen kan være ekstern (et separat program) eller intern (som en del af hovedprogrammet). Subrutiner er nyttige, når et program skal gentage den samme gruppe af kommandoer på flere forskellige steder.

Kald af et separat program

Du kan kalde et separat program, anvende samme syntaks, som når du plejer at køre programmet fra indtastningslinjen.

Definition og kald af en intern subrutine

Til at definere en intern subrutine skal du anvende kommandoen Define med Prgm...EndPrgm. Da en subrutine skal defineres, før den kan kaldes, er det god praksis at definere subrutiner i starten af hovedprogrammet.

En intern subrutine kaldes og udføres på samme måde som et separat program.

Define subtest1()=

  Prgm

  local subtest2  À

  Define subtest2(x,y)=  Á

  Prgm

    Disp x,y

  EndPrgm

  ©Beginning of main program

  For i,1,4,1

    subtest2(i,I*1000)  Â

  EndFor

  EndPrgm

À

Erklærer subrutinen som en lokal variabel.

Á

Definerer subrutinen.

Â

Kalder subrutinen.

Bemærk: Anvend programeditorens Var-menu til at indtaste kommandoerne Define og Prgm...EndPrgm.

Bemærkninger om anvendelse af subrutiner

Ved slutningen af en subrutine vender eksekveringen tilbage til det program, der kaldte den. Subrutinen kan afsluttes på ethvert andet tidspunkt ved at anvende Return uden noget argument.

En subrutine kan ikke åbne lokale variable, der er erklæret i det program, der kalder op. På samme måde kan det program, der kalder, ikke åbne lokale variable, der er erklæret i en subrutine.

Lbl-kommandoer er lokale for de programmer, de er placeret i. Derfor kan en Goto-kommando i det program, der kalder, ikke gå til et mærke i en subrutine eller omvendt.

Undgå fejl med cirkulær definition

Ved evaluering af en brugerdefineret funktion eller kørsel af et program kan du angive et argument, der omfatter samme variabel, der blev anvendt til at definere funktionen eller oprette programmet. Men for at undgå cirkulære definitionsfejl skal du tildele en værdi for variable, der anvendes i evaluering af funktionen eller kørslen af programmet. For eksempel:

x+1&x  À

– eller –

For i,i,10,1

  Disp i  À

EndFor

À

Udløser fejlmeddelelsen Cirkulær definition (Circular definition), hvis x eller i ikke har en værdi. Fejlen optræder ikke, hvis x eller i i forvejen er tildelt en værdi.

 

© 2006 - 2016 Texas Instruments Incorporated