
Invocar uma rotina em C.
CALL <nome> ([<par1>,...,<parN>])
|
<nome> |
representa o nome da rotina a ser invocada. |
|
<parN> |
parâmetros recebidos pela rotina. |
Invoca a rotina <nome>, passando parâmetros, se estes forem especificados.
O compilador OPUS verifica cada chamada de rotina feita pelo comando CALL no arquivo de protótipos de função, especificado no comando CC INCLUDE. Caso exista algum erro, este será informado e a compilação interrompida.
Quando no protótipo de uma rotina, um parâmetro for especificado como VOID, o tipo deste pode ser informado pela OPUS através do comando SET VOID antes do comando CALL.
O exemplo a seguir mostra-nos como utilizar o comando CALL para invocar rotinas C.
prog exemp CC INCLUDE "halo.h"
* halo.h
* /*function prototyping for C language interface - generic
* coordinates*/
*# define DEVICE_DRIVER 1
* int zoom ( void *, void *, int * );
* int setdev ( char * );
* int initgraphics ( int * );
* int worldoff ( void );
DEVICE_DRIVER = "AHDIBME.DSP"
Mode, Xmax, Ymax = 0
SET VOID to char
CALL setdev (DEVICE_DRIVER)
CALL initgraphics (Mode)
CALL inqdrange (Xmax,Ymax)
