En meget sikker enterprise styresystem udviklet af IBM , z /OS beføjelser store mainframe computere , og giver en integreret miljø for udvikling af applikationer i forskellige programmeringssprog . Du kan bruge intersprog kommunikation - eller ILC - funktionalitet indbygget i z /OS til problemfrit forbinde COBOL og C-programmer , som operativsystemet byder på understøttelse af denne funktion. Du kan ringe til C-rutiner fra COBOL eller ring COBOL rutiner fra C, eller en kombination af begge, meget på samme måde, som du ville ringe til lokale rutiner på hvert sprog . Ting du skal
IBM mainframe kører z /OS
Enterprise COBOL for z /OS
z /OS XL C /C + +
Vis Flere Instruktioner
1 < p > Link dit C -program til at ringe til din COBOL -program ved at erklære din C og COBOL -funktioner som følger : Hej
Erklær en funktion i C , der passerer et heltal værdi ( i) COBOL : void CBLRTN ( int) ; CBLRTN ( i)
bruge værdien "I" fra C -programmet i dit COBOL -program: 01 jeg PIC S9 (9) BINARY.PROCEDURE DIVISION BRUG aF vÆRDI I.
2 < p > Link din COBOL programmet til din C-program ved at have COBOL -programmet kalder en C-funktion og videregive det en værdi , som følger : Hej
Ring C subroutine " CFUNC " fra COBOL , der passerer værdien " i" : 01 jeg PIC S9 (9) BINARY.CALL " CFUNC " BRUG aF VÆRDI I.
Erklær funktionen i C : void CFUNC ( int i ) { tilbage i; }
< br > 3
Erklær en " pragma_linkage " øverst på din C-program til eksplicit erklære en binding til COBOL , der kræves af visse compilere . Syntaksen for pragma kobling er: " # pragma kobling (funktion , COBOL ) "
Du erklære pragma lift og skabe en C-funktion til at passere en værdi til COBOL som følger: .
# pragma lift ( CBLRTN , COBOL ) void CBLRTN ( int i) CBLRTN ( i)
derefter bruge passerede variabel i dit COBOL program som følger : Hej
01 i PIC S9 ( 9) Usage er BINARYPROCEDURE DIVISION BRUG I.
4
Erklær en " pragma sammenkædning " i toppen af din C-program til eksplicit knytte COBOL -programmet til C. Dette kræves af nogle compilere . Den pragma kobling sker altid i C-programmet , selv når COBOL programmet passerer værdi for C-program
Du erklærer variablen i COBOL programmet og kalder C funktion som følger: .
01 jeg PIC S9 (9) Usage er BINARYCALL ' CFUNC ' BRUG aF INDHOLD I.
derefter erklære pragma binding til COBOL og definere funktionen i C som følger : Hej
# pragma lift ( CFUNC , COBOL ) void CFUNC ( int p1 ) { }