Chinaunix首页 | 论坛 | 博客
  • 博客访问: 357016
  • 博文数量: 90
  • 博客积分: 847
  • 博客等级: 准尉
  • 技术积分: 1373
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-02 10:54
个人简介

跌打滚爬中的小菜鸟...

文章分类

全部博文(90)

文章存档

2015年(5)

2013年(47)

2012年(38)

我的朋友

分类: LINUX

2012-08-09 09:57:05

RPGLE里的变量要两个重要属性,一个是Declaration Type,这个是描述变量类别的,如定义Data Structure, Standalone Field, Array, Table等; 一个是Internal Type,这个是定义变量的数据类型的,如character, Packed Decimal, Zoned Decimal, Binary, Date, Time, Timestamp, Pointer等等.


这里先讨论下Zoned Decimal

1. Zoned Deciaml数据溢出(数据超过定义的最大值)时程序是会异常中断的
2. Zoned Decimal定义的小数在显示时是没有小数点的

这个例子的source
0001.00 D WAIT            S              1A                           
0002.00 D NUM1            S              5S 0                         
0003.00 D NUM2            S             10S 2                         
0004.00 C*                                                            
0005.00 C                   EVAL      NUM1=88888                      
0006.00 C     NUM1          DSPLY                   WAIT              
0007.00 C*                                                            
0008.00 C                   EVAL      NUM1=88888+11111                
0009.00 C     NUM1          DSPLY                   WAIT              
0010.00 C*                                                            
0011.00 C                   EVAL      NUM2=3333                       
0012.00 C     NUM2          DSPLY                   WAIT              
0013.00 C*                                                            
0014.00 C     NUM2          DIV       2             NUM2              
0015.00 C     NUM2          DSPLY                   WAIT              
0016.00 C*                                                            
0017.00 C                   EVAL      *INLR=*ON             
0018.00 C                   RETURN                          

阅读(1979) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~