Tôi muốn đọc các dòng ra khỏi STDIN (aka SYSIN) trong COBOL. Bây giờ tôi chỉ muốn in chúng ra để tôi biết tôi có chúng. Từ tất cả những gì tôi đọc nó trông như thế này nên làm việc:Đọc STDIN (SYSIN) trong COBOL
IDENTIFICATION DIVISION.
PROGRAM-ID. APP.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SYSIN ASSIGN TO DA-S-SYSIN ORGANIZATION LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD SYSIN.
01 ln PIC X(255).
88 EOF VALUE HIGH-VALUES.
WORKING-STORAGE SECTION.
PROCEDURE DIVISION.
OPEN INPUT SYSIN
READ SYSIN
AT END SET EOF TO TRUE
END-READ
PERFORM UNTIL EOF
DISPLAY ln
READ SYSIN
AT END SET EOF TO TRUE
END-READ
END-PERFORM
CLOSE SYSIN
STOP RUN.
Đó biên dịch (sử dụng mở COBOL và cobc -x), nhưng chạy nó tôi nhận được:
libcob: File does not exist (STATUS = 35) File : ''
Tôi đang làm gì sai rồi?
Tôi đồng ý với việc sử dụng ACCEPT (mặc dù tôi đã đọc được coi là thực hành không tốt cho dữ liệu lớn), nhưng sau đó làm cách nào để xây dựng vòng lặp để phát hiện EOF? – singpolyma