美文网首页SAP
ABAP 代码中,哪些特殊字符不能用于变量命名?

ABAP 代码中,哪些特殊字符不能用于变量命名?

作者: 华山令狐冲 | 来源:发表于2021-11-19 10:44 被阅读0次

下列 ABAP 代码,哪些行会引起编译错误?

REPORT z.

TYPES t_itab TYPE TABLE OF i WITH EMPTY KEY.

DATA(lt*) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).

DATA(lt!) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).

DATA(lt$) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).

DATA(lt_) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).

DATA(ltɵ) = VALUE t_itab( ( 10 ) ( 20 ) ( 30 ) ).

BREAK-POINT.

答案是第7行和第13行。

ABAP 里的感叹号作为 escape 字符,用以区别于 ABAP 语句中同名的ABAP keyword. ABAP 语句中前面带有 ! 字符的每个单词都被解释为一个操作数,而不是一个 ABAP keyword. 转义字符本身不是名称的一部分,在执行语句时会被忽略。


比如下面的 ABAP 代码:

FORM test USING !CHANGING
          CHANGING !USING.
  using = changing.
ENDFORM.

第一个 CHANGING 前面加上了感叹号,说明这个 CHANGING 不是关键字,而是 FORM 的形式参数的名称。

第13行的问题是:

In Unicode programs, the "" character cannot appear in names, as it does here in the name "".

在 ABAP unicode 程序里,希腊字符 “ɵ”不允许作为变量名。

在 TypeScript 和 JavaScript 里没有这个限制。实际上,ɵ 广泛用于 Angular 源代码里。

更多Jerry的原创文章,尽在:"汪子熙":


相关文章

  • ABAP 代码中,哪些特殊字符不能用于变量命名?

    下列 ABAP 代码,哪些行会引起编译错误? 答案是第7行和第13行。 ABAP 里的感叹号作为 escape 字...

  • 用 Python 处理 HTML 转义字符的5种方式

    什么是转义字符 在 HTML 中 <、>、& 等字符有特殊含义(<,> 用于标签中,& 用于转义),他们不能在 H...

  • Python变量以及命名规则

    变量以及命名规则 ①字符之间不能有空格,不能以数字开头,不可使用特殊符号,如:@、#、%等。 ②不能使用关键字,如...

  • python——语言基础

    变量和常量 变量的命名规则 要具有描述性 变量名只能以_,数字字母组成,不可以为特殊字符 不能以数字或者空格开头 ...

  • Python全栈开发笔记—练习题—day3

    1. 说出变量名字可以由哪些字符组成 字母、数字、下划线 2. 写出变量命名时的规则 变量的第一个字符不能是数字变...

  • 个人常用函数

    字段排序 清理字符串中的特殊字符,可用于文件命名 节格式化为kb、mb、gb,可用于文件大小转换 PC UA随机生...

  • 编程基础

    说出变量名字,可以由哪些字符组成字母、数字、下划线, 写出变量命名时的规则不能以数字开头,不能使用关键字 说出什么...

  • 变量

    1、变量的命名和使用规则1.1 以字母和下划线为开头,不能包含特殊字符比如@,#,!等,区分大小写。在变量名前加$...

  • 「php化整为零系列」七、Heredoc&Nowdoc

    Heredoc和Nowdoc用于在php代码中嵌入大段字符,同时特殊字符不需要转义 语法: Heredoc: No...

  • js 学习笔记 第一天

    变量 变量的命名规则! 变量命名必须以字母或是下标符号”_”或者”$”为开头。 变量名长度不能超过255个字符。 ...

网友评论

    本文标题:ABAP 代码中,哪些特殊字符不能用于变量命名?

    本文链接:https://www.haomeiwen.com/subject/zcfgoltx.html