Le système d'exploitation de l'entreprise hautement sécurisé développé par IBM , z /OS pouvoirs gros ordinateurs et fournit un environnement intégré pour le développement d'applications dans différents langages de programmation. Vous pouvez utiliser la communication interlinguistique - ou CDI - fonctionnalité intégrée dans z /OS pour relier de manière transparente les programmes C COBOL et, comme le système d'exploitation offre un support natif pour cette fonction. Vous pouvez appeler routines C de COBOL ou appel COBOL routines de C , ou une combinaison des deux , de la même manière dont vous souhaitez appeler des routines locales dans chaque langue. Choses que vous devez
IBM mainframe exécutant z /OS
Enterprise COBOL for z /OS
z /OS XL C /C + +
Voir Plus Instructions
1 < p > Link de votre programme C pour appeler votre programme COBOL en déclarant votre fonctions COBOL et C comme suit:
déclarer une fonction en C qui passe une valeur entière (i ) pour COBOL : void CBLRTN (int) ; CBLRTN ( i);
Utilisez la valeur «I» du programme C dans votre programme COBOL : 01 je PIC S9 ( 9) DIVISION BINARY.PROCEDURE UTILISATION eN VALEUR I.
2 < p > Liez votre programme COBOL à votre programme C par avoir le programme COBOL appeler une fonction C et passer une valeur, comme suit:
Appelez le sous-programme C " cfunc " de COBOL, passant la valeur "I" : 01 I PIC S9 ( 9) BINARY.CALL " cfunc " UTILISATION eN VALEUR I.
déclarer la fonction en C : void cfunc (int i ) {return i ;}
< br > 3
déclarer une « pragma_linkage » en haut de votre programme C de déclarer explicitement un lien avec COBOL, qui est requis par certains compilateurs . La syntaxe de la tringlerie de pragma est: "# pragma liaison ( fonction , COBOL ) "
Vous déclarez le lien pragma et créer une fonction C pour transmettre une valeur à COBOL comme suit : .
# liaison pragma ( CBLRTN , COBOL ) vide CBLRTN (int i); CBLRTN ( i);
Vous utilisez ensuite la variable passée dans votre programme COBOL comme suit :
01 I PIC S9 ( 9) l'utilisation est BINARYPROCEDURE division à l'aide I.
4
déclarer une « liaison pragma » en haut de votre programme C de lier explicitement le programme COBOL à C. Ceci est requis par certains compilateurs . Le lien de pragma est toujours fait dans le programme C , même si le programme COBOL passe la valeur au programme C
vous déclarez la variable dans le programme COBOL et appelez la fonction C comme suit : .
01 I PIC S9 ( 9) l'utilisation est BINARYCALL ' cfunc «Utilisation par le contenu I.
Vous déclarez ensuite le lien pragma pour COBOL et définir la fonction en C comme suit :
# liaison pragma ( cfunc , COBOL ) vide cfunc (int p1 ) {}