0

cobol の構文に問題があります。Ubuntu 4.2.0-16-generic で open-cobol パッケージを使用していますが、エラーが発生しました:

~/cobol$ cobc -free -x -o cal cal.cbl
cal.cbl:6: Error: syntax error, unexpected $undefined, expecting "end of file"

私の cal.cbl ファイル:

IDENTIFICATION DIVISION.
PROGRAM-ID. cal.
ENVIRONMENT DIVISION.

DATA DIVISION.   
?? OPTION PIC 9 VALUE ZERO.
?? NUM1   PIC 9(5)V9(2) VALUE ZERO.
?? NUM2   PIC 9(5)V9(2) VALUE ZERO.
?? RESULT PIC 9(10)V9(2) VALUE ZERO.

PROCEDURE DIVISION.
ACCEPT OPTION.

DISPLAY "INSERT FIRST OPTION".
ACCEPT NUM1.
DISPLAY "INSERT SECOND OPTION".
ACCEPT NUM2.

STOP RUN.

私はcoboltの初心者です。列について何か知っているので、コンパイルに -free フラグを使用していますが、このエラーは意味がありません。

なぜこのエラーが発生するのか、助けてください:)

4

1 に答える 1

5

??は有効な COBOL 単語ではなく、レベル番号もありません (6 行目で必要です)。これらのメッセージは、OpenCOBOL/GnuCOBOL 1.1 からのものです。

新しい GnuCOBOL バージョンは、ユーザー メッセージを含む多くの点ではるかに優れています (ここでは GC 2.2 を使用)。

cal.cob: 6: Error: Invalid symbol: ? - Skipping word
cal.cob: 6: Error: PROCEDURE DIVISION header missing
cal.cob: 6: Error: syntax error, unexpected Identifier
cal.cob: 7: Error: Invalid symbol: ? - Skipping word
cal.cob: 7: Error: syntax error, unexpected Identifier
cal.cob: 8: Error: Invalid symbol: ? - Skipping word
cal.cob: 8: Error: syntax error, unexpected Identifier
cal.cob: 9: Error: Invalid symbol: ? - Skipping word
cal.cob: 9: Error: syntax error, unexpected Identifier
cal.cob: 11: Error: syntax error, unexpected PROCEDURE
cal.cob: 12: Error: 'OPTION' is not defined
cal.cob: 15: Error: 'NUM1' is not defined
cal.cob: 17: Error: 'NUM2' is not defined

またはに変更??すると、エラーは発生しなくなります。挿入または後にすると、プログラムは正常にコンパイルされます。0177WORKING-STORAGE SECTIONLOCAL-STORAGE SECTIONDATA DIVISION

COBOL について詳しく知るには、 Programmer's Guideを入手してください。

于 2016-07-16T08:26:33.030 に答える