COBOL删除语句

COBOL删除语句,cobol,gnucobol,Cobol,Gnucobol,我正在看COBOL教程,他们使用erase语句来清理屏幕,但这对我不起作用。编译器指示语法错误、意外擦除 代码是: DISPLAY "1.- CALC, 2.- CLOSE" ERASE. 是我的错吗 我在ubuntu上使用opencobol 抱歉,我的英语不是我的母语。正如@user207421所指出的那样,ERASE不是一个语句,它是DISPLAY语句的一个子句,它甚至是标准化的-但从标准角度来看,它需要一个您想要擦除的规范: ERASE [END] [OF] LINE

我正在看COBOL教程,他们使用erase语句来清理屏幕,但这对我不起作用。编译器指示语法错误、意外擦除

代码是:

DISPLAY "1.- CALC, 2.- CLOSE" ERASE.
是我的错吗

我在ubuntu上使用opencobol 抱歉,我的英语不是我的母语。

正如@user207421所指出的那样,ERASE不是一个语句,它是DISPLAY语句的一个子句,它甚至是标准化的-但从标准角度来看,它需要一个您想要擦除的规范:

ERASE [END] [OF] LINE
      [END] [OF] SCREEN
      EOL
      EOS
您显示的语法实际上是非常非标准的、过时的Microsoft COBOL DISPLAY语句

如果您仍然使用OpenCOBOL,那么这个包已经严重过时,Ubuntu中应该有一个新的gnucobol包,否则您可以从源代码构建。使用GnuCOBOL 2.2,您会得到一条更好的错误消息:

错误:语法错误,意外,应为行或屏幕

然后,您可以决定是否需要GnuCOBOL中支持的旧ms cobol变体,但只有使用pos说明符或标准变体ERASE EOS才能成为兼容的版本,并且受到许多编译器的支持。

正如@user207421所指出的,ERASE不是一个语句,它是DISPLAY语句的一个子句,它甚至是标准化的——但就标准而言,它需要一个您想要删除的规范:

ERASE [END] [OF] LINE
      [END] [OF] SCREEN
      EOL
      EOS
您显示的语法实际上是非常非标准的、过时的Microsoft COBOL DISPLAY语句

如果您仍然使用OpenCOBOL,那么这个包已经严重过时,Ubuntu中应该有一个新的gnucobol包,否则您可以从源代码构建。使用GnuCOBOL 2.2,您会得到一条更好的错误消息:

错误:语法错误,意外,应为行或屏幕

然后,您可以决定是否需要GnuCOBOL中支持的旧ms cobol变体,但只有使用pos说明符或标准变体ERASE EOS才能成为兼容的版本,并且受到许多编译器的支持。

这里的句子是DISPLAY。这里的删除不是一个句子,充其量只是一个从句,而且是一个非标准的从句。如果您的Cobol实现不支持它,这就是您将得到的结果。这里的删除不是一个句子,充其量只是一个从句,而且是一个非标准的从句。如果您的Cobol实现不支持它,这就是您将得到的结果。