2016-10-15 5 views
3

У меня проблема с компилятором для языка программирования COBOL. Я использую программу «OpenCobolIDE» (GnuCOBOL 1.1 Mingw).Введенные данные не сохраняются правильно

Во-первых, здесь приведен пример примера программы.

IDENTIFICATION DIVISION. 
    PROGRAM-ID. HelloWorld. 
    DATA DIVISION. 
    FILE SECTION. 
    WORKING-STORAGE SECTION. 
    01 name   pic x(32). 
    PROCEDURE DIVISION. 
    beginn section. 
     DISPLAY "What is your Name?: " with no advancing. 
     accept name. 
     DISPLAY "Your Name: ",name . 
     STOP RUN. 
    END PROGRAM HelloWorld. 

После ввода моего имени, «Альберт», консоль не посылает сообщение «Ваше имя: Альберт» назад. Консоль после «Альберта» пуста. Но если я задаю длину имени строки до 6, так как мое имя длиной 6 символов, программа работает правильно, а на консоли отображается «Ваше имя: Альберт».

В дополнение к этому пункт with no advancing работает неправильно. Когда я использую эту команду, консоль не печатает «Что такое ваше имя?», Оно пропускает строку, и я должен сначала ввести свое имя, а после ввода моего имени консоль показывает: «Как ваше имя ?: Альберт» , Но в .exe скомпилированной программы командная строка with no advancing работает правильно.

Почему это так, и как я могу это исправить?

ответ

3

Похоже, вы используете встроенную консоль python, которая используется OCIDE для лучшей интеграции. Побочный эффект: он не полностью функционирует, как только вы начинаете использовать что-либо, кроме очень простого ACCEPT/DISPLAY его следует отключить:

Предпочтения (F2) -> Tab Run -> check "Run in external терминал "

BTW: Установка Windows OpenCOBOL IDE поставляется с последним официальным пакетом MinGW GnuCOBOL. В настоящее время это 1.1, но очень скоро будет GnuCOBOL 2.0 rc2 (или окончательным), я настоятельно рекомендую использовать этот вместо старого GnuCOBOL 1.1. Вы можете получить неофициальный preview version with the rc1 и/или оставаться настроенным для новой версии (которая, скорее всего, будет добавлена ​​и в OCIDE).

Редактировать: Как было выяснено в комментарии:

Проблема была старая версия GnuCOBOL 1,1, потому что после обновления работает правильно!

+0

Я люблю тебя, так много !!!!!! – Booster

+1

Проблема была в старой версии GnuCOBOL 1.1, потому что после обновления ее исправлений! – Booster

+0

Благодарим вас за отзыв. Я добавлю это к своему ответу. –

Смежные вопросы