Rob*_*uld 8 language-features cobol
我喜欢花时间研究语言的酷炫功能,即使我很快就没有机会使用它们,但是只听到Cobol的坏事,但我敢肯定它必须有一些不错的功能才能使用它.变得和它一样重要.那么从Cobol可以学到什么好的功能呢?
Kon*_*kus 12
能够以不那么简洁的方式编写公式.例如:
ADD YEARS TO AGE.
MULTIPLY PRICE BY QUANTITY GIVING COST.
SUBTRACT DISCOUNT FROM COST GIVING FINAL-COST.
Run Code Online (Sandbox Code Playgroud)
这是优势还是劣势?取决于你如何看待它......
小智 9
真正的定点变量和数学.因此,对于15美元和75美分,您的内部表示是二进制数字1,5,7和5.这是与标准浮点近似的精确表示.此外,该定点变量的所有加法和减法也是定点的.
Report Writer扩展非常擅长生成报告和处理页眉,页脚,分页符,分节符以及与生成报告有关的任何内容.
Sort/Merge扩展也非常非常好.使用各种允许的构造,您可以简单地排序/合并,或者您可以在排序后排序或排序输出之前处理排序输入记录.例如,直接输入输入记录进行排序,然后在排序记录上使用Report Writer,而无需在代码中管理中间排序文件.非常好.
它做得很好,它做得很好.只是在大多数情况下,它做得很好并不完全是你所需要的.
长寿.我在1975年首次学习的语言可用于今天的Web服务.
此外,COBOL有一个我听到人们每天都要求的功能.给定两个具有相同名称字段的记录,您可以:
MOVE CORRESPONDING SOURCE-RECORD TO DESTINATION-RECORD.
Run Code Online (Sandbox Code Playgroud)
它会将具有相同名称的字段从一个字段移动到另一个字段,并根据需要进行转换.缺少这样的功能是人们采用数据传输对象从Web服务返回的方式之一 - 您必须编写代码来手动完成上述操作,或者使用代码生成.
我想可能也有ADD CORRESPONDING,但我不确定.一段时间后,记忆开始消失......
输出格式是变量声明的一部分.它非常注重业务.
在COBOL中,变量声明由DATA DIVISION中的一行包含以下项:
Run Code Online (Sandbox Code Playgroud)* A level number. * A data-name or identifier. * A Picture clause.可以通过名为VALUE子句的PICTURE子句的扩展将起始值赋给变量.
一些例子:
Run Code Online (Sandbox Code Playgroud)01 GrossPay PIC 9(5)V99 VALUE ZEROS. 01 NetPay PIC 9(5)V99 VALUE ZEROS. 01 CustomerName PIC X(20) VALUE SPACES. 01 CustDiscount PIC V99 VALUE .25.
哦,我怎么能忘记......
代替:
if ((a == 3) || (a == 4) || (a == 10))
Run Code Online (Sandbox Code Playgroud)
写:
IF A IS 3 OR 4 OR 10
Run Code Online (Sandbox Code Playgroud)
代替:
if ((a == 3) || (a < b))
Run Code Online (Sandbox Code Playgroud)
写:
IF A IS 3 OR LESS THAN B
Run Code Online (Sandbox Code Playgroud)
代替:
if ((a >= 3) && (a <= 10))
Run Code Online (Sandbox Code Playgroud)
写:
IF A IS BETWEEN 3 AND 10
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2144 次 |
| 最近记录: |