我有一個調用匯編模塊的COBOL程序。這個模塊返回一個指針,指向這個模塊中獲得的一些數據(我將它稱爲'緩衝區')。 如何將我的工作存儲器中的變量寫入該指針並使用數據?如何從彙編返回的指針指向databuffer到COBOL
在我的COBOL呼叫者我有類似:
工作空間:
01 WK-MOD-AREA.
03 WK-MOD-PTR PIC 9(09) COMP VALUE 0.
01 WK-BUFFER-PTR USAGE POINTER.
01 FILLER REDEFINES WK-BUFFER-PTR.
03 WK-BUFFER-PTR-COMP PIC 9(09) COMP.
01 WK-BUFFER-DATA PIC X(5656) VALUE SPACES.
程序師:
CALL 'MYMOD' USING WK-MOD-AREA.
MYMOD返回WK-MOD-PTR的地址。
我只是用tryed地址中的數據:
MOVE WK-MOD-PTR TO WK-BUFFER-PTR-COMP.
SET ADDRESS OF WK-BUFFER-PTR TO WK-BUFFER.
但它給了我compiller錯誤:
==000657==> IGYPS2161-S "ADDRESS OF" operand "WRK-BUFFER"
was found as the receiving operand of a "SET" statement,
but was not a level-01 or level-77 "LINKAGE SECTION" item.
The statement was discarded.
在此先感謝。
我假設你的意思是'CALL'MYMOD'使用WK-MOD-AREA'(傳遞變量'BY REFERENCE')而不是'CALL'MYMOD'使用'WK-MOD-AREA' 'BY VALUE')。 –
@SimonSobisch我的壞...這是acctualy被稱爲參考。沒有「引號」。 –