Un programme utilisant un module statique et un module dynamique

Ce programme présente un programme utilisant une bibliothèque statique. Pour cette raison, il ne peut être interprété.

Les fichiers sources sont dans le répertoire ${UPS_HOME}/upssdk/demo/${UPS_LANGUAGE}/appel/.

Mode compilé

Cet exemple nécessite d'avoir compilé liba de l'exemple du module statique à deux composants et libb module dynamique à deux composants.

Commande de compilation

upscmp Source=exes.upl

Commande d'exécution

exes

Fichiers sources

Source Composant "Exemple d'emploi de bibliothèques" Version 4.0.0;

ImporterModule
/************/
Variable
/******/
Fonction FonPrincipal1() Retourner Entier
/***************************************/
Debut
Retourner 1;
Fin Fonction

Fonction FonPrincipal2() Retourner Reel
/*************************************/
Debut
Retourner 3.14;
Fin Fonction

Procedure ProPrincipal2(A : Entier, B : Reel Entree Sortie)
/*********************************************************/
Debut
Ecran.Ecrire(A);
B=200.1234;
Fin Procedure

Procedure ProPrincipal1(A : Entier Entree Sortie, B : Reel Entree Sortie)
/***********************************************************************/
Debut
ProPrincipal2(A, B);
A=100;
B=100.99;
Fin Procedure

Principal
/*******/
Debut
VarPrincipalA=1;
Ecran.Ecrire(VarPrincipalA);
VarPrincipalB=2.1;
Ecran.Ecrire(VarPrincipalB);
LibA.ProA1A(2, 3.2, LibA.EnuA1A_3);
LibB.ProB1A(3, 4.3, LibB.EnuB1A_3);
LibA.ProA2A(4, 5.4, LibA.EnuA2A_1);
LibB.ProB2A(5,6.5,LibB.EnuB2A_1);
Ecran.Ecrire(FonPrincipal1());
Ecran.Ecrire(FonPrincipal2());
Fin Principal

Résultat de l'exécution

1 2.1 Debut ProA1A 3 4.9 2 3.2 Debut ProA1C 1 2.9 4 6.4 Fin ProA1C Fin ProA1A Debut ProB1A 3 4.9 3 4.3 Debut ProB1C 1 2.9 6 8.6 Fin ProB1C Fin ProB1A Debut ProA2A 3 4.9 4 5.4 Debut ProA2C 1 2.9 8 10.8 Fin ProA2C Debut ProA2B 2 3.9 12 16.2 Fin ProA2B Debut ProA1B 2 3.9 16 21.6 Fin ProA1B Fin ProA2A Debut ProB1A 3 4.9 5 6.5 Debut ProB2C 1 2.9 10 13.0 Fin ProB2C Debut ProB2B 2 3.9 15 19.5 Fin ProB2B Debut ProB1B 2 3.9 20 26.0 Fin ProB1B Fin ProB2A 1 3.14