abap 连等

     ABAP内也是支持连等式的比如 L_STR1 = L_STR2 = 1.但是使用这个语句的是要特别注意,如果 L_STR1 、L_STR2的类型不一样可能会被坑。比如L_STR1是STRING类型的,L_STR2是NUMC类型的,其实我们的想法是执行这条语句后,L_STR1 =等于1,L_STR2 也等于 1。但是执行完后你会发现根本不是你想要的结果

测试代码

*&---------------------------------------------------------------------*
*& Report  ZDEMO1
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT ZDEMO1.
data:l_str1 TYPE string,
     l_str2 TYPE BDL_INST.
l_str1 = l_str2 = 1.
WRITE : / l_str1 ,l_str2.

l_str2 = l_str1 = 1.
WRITE : / l_str1 ,l_str2.

结果:

program for demo

0000000001 0000000001
1  0000000001

竟然2次的结果不一样,其实是酱紫的,连等的话和其他语言一样,L_STR1 = L_STR2 = 1.相当于先执行L_STR2 = 1然后因为L_STR2是numc类型的,所以自动补齐前导0,就变成了0000000001,而再执行L_STR1 = L_STR2后因为是L_STR1STRING,所以L_STR1也变成了0000000001。

posted @   linhuang  阅读(8)  评论(0编辑  收藏  举报  
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示