2012-04-12 2 views
0

Я хочу показать эти слова, используя оператор отображения Политика компании Но если я так использую, она рассматривает слова как переменные. Я пробовал использоватьКак показать одинарную цитату в cobol

DISPLAY "COMPANY'S POLICY" 
DISPLAY 'COMPANY\'S POLICY' 

Но никто не работал. Как избежать этой отдельной цитаты?

Пример кода:

DFHMDF POS=(1,23),LENGTH=30,    
    INITIAL="company's policy" 
    ATTRB=PROT 
+0

Я согласен с @Siva Charan: одна цитата внутри двойных кавычек должна работать нормально. Можете ли вы опубликовать фрагмент кода и сообщение об ошибке компилятора, которое заставляет вас полагать, что переменная выведена? –

+0

Мне не удалось увидеть ошибки. Но я получаю maxcc = 12. Моя программа была прекрасна раньше. – Pramod

+0

Если у вас все еще есть проблемы, вырежьте/вставьте код и точное сообщение об ошибке, и как вы его компилируете (используя отдельный шаг перевода или вызывается компилятором). – zarchasmpgmr

ответ

5

Quote избежать работы в COBOL, как это делает во многих других языках. Попробуйте:

DISPLAY 'COMPANY''S POLICY'

Два апострофа в строке показывают один буквальный символ апострофа. Или:

DISPLAY "COMPANY'S POLICY"

Используйте кавычки, как внешняя разделитель строки, которая позволяет использовать неэкранированный апостроф в буквальном

Within DFHMDF (строго говоря, это не COBOL), вы ограничены использование апостроф как буквальный разделитель. Здесь вам нужно прибегнуть к использованию двух апострофов подряд.

  DFHMDF POS=(1,23),LENGTH=30,        X    
       INITIAL='company''s policy',       X 
       ATTRB=PROT 
+0

Я пробовал оба. Но никто из них не работал. Второй не принимается, сначала принимается, но это результат: политика компании – Pramod

+0

@Pramod у вас есть маркер продолжения в столбце 71? Вы что-то пропустили? См. Пример выше (я немного его исправил). – NealB

0

В идеале это должно работать

DISPLAY "COMPANY'S POLICY" 
-2

Это выглядит как вызов макроса BMS. Вам нужно будет использовать двойную апострофию.

ЭКРАН 'КОМПАНИЯ' ЭТО ПОЛИТИКА '

или

DFHMDF POS = (1,23), ДЛИНА = 30,
начальных = 'Компания' политика на' ATTRB = PROT

Вы также можете использовать COBOL фигуративные константы (если опция Apost компилятор включен): QUOTE

DISPLAY 'ФИРМЫ' 'S' ПОЛИТИКА

+0

OP говорит о COBOL и, к сожалению, использует код ассемблера BMP как «смотри, это работает здесь». – zarchasmpgmr

+0

Справа. Поэтому использование BMS в значительной степени указывает на то, что это z/OS. Во всех случаях, для обеих вещей, двойной апостроф будет правильно указывать. –

0

Компиляторы Enterprise COBOL поддерживают смешивание котировок.

Любой из них будет работать:

DISPLAY "Он сказал: "Привет". ДИСПЛЕЙ «Он сказал:« Привет »« ».

ДИСПЛЕЙ «Я устал». ДИСПЛЕЙ «Я устал».

Опция QUOTE/APOST связана с фигуративной константой QUOTE (S), которая всегда может использоваться как опция резервного копирования.

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