ABAP数据类型总结

前言

ABAP中提供了丰富多样的内置基本数据类型,以支持不同的数据表示和处理需求。以下是对一些主要ABAP内置基本数据类型的介绍。

ABAP内置基本数据类型:

数据类型介绍:

C:字符型,固定长度的字符类型,用于存储单个字符或短文本串。定义时需要指定长度(1到65535个字节),默认初始值为空格。

N:数字文本,用于存储格式化的数字字符串,如带有前导零或固定位数的数字。定义时需要指定长度,且正负号和小数点各占一位。

T:时间类型,格式为24hour的HHMMSS;

D:日期类型,日期格式必须为YYYYMMDD;

I:整型,占用4个字节(32位),能表示的数值范围为 -2,147,483,648 到 +2,147,483,647。

F:浮点数,通常用于需要较高精度或较大数值范围的数学计算,小数位最大可以到17位。

P:定点数类型,用于精确的金额和数量计算。定义时需要指定总长度(字节数)和小数位数,最后一个字节用于表示正负号,其余字节存储数值。

X:十六进制,用于存储非文本的二进制数据,如图像、文件内容等。类似于字符串,但每个字符代表两位十六进制数。

String:长度可变的字符类型,能够存储任意长度的文本。在内部,字符串通过引用动态数据对象的内存地址进行操作。由于其动态特性,不适用于所有字符串操作语句,如 SHIFT。可以直接与 C、D、T、I 和 N 类型进行转换。

XString:长度可变的十六进制字符类型, 0-9, A-F组成字符串。直接打印输出时,输出的还是赋值时字面意义上的值。

数据字典中预定义类型与ABAP中的中数据类型对应关系:

字符字节-Bytes的小知识

        非 Unicode 系统

        在非 Unicode 的 ABAP 系统中,通常采用 ASCII 或类似的单字节编码系统。在这样的系统中,英文字符以及大多数标点符号占用一个字节的空间。然而,对于包含非英文字符的情况,如中文、日文或韩文等,系统可能会采用双字节或更复杂的编码方案(如 DBCS - 双字节字符集)来存储这些字符。因此,在非 Unicode 的环境下,一个字符所占的字节大小是不固定的,可以从 1 个字节到多个字节不等,具体取决于该字符是否属于 ASCII 范畴以及所用的具体编码方式。

        Unicode 系统

        转向 Unicode 系统,SAP 为了适应全球化的需求,采用了 Unicode 标准进行字符的编码。Unicode 能够用统一的方式表示世界上大多数的文字系统。在 ABAP Unicode 系统中,通常采用 UTF-16 编码。在 UTF-16 编码中,大部分字符(包括所有的基本多文种平面字符)使用 2 个字节进行编码。但对于辅助平面的字符(包括一些较少用的字符、古文字符以及部分表情符号等),需要 4 个字节来存储。因此,在 Unicode 的 ABAP 系统中,一个字符所需的存储空间通常为 2 个字节,但也可能扩展到 4 个字节。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SAP_亮亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值