空白(whitespace)有两个用途:分隔源文件中的符号和区分前缀、后缀和二元运算符(参见 运算符),在其他情况下空白则会被忽略。以下的字符会被当作空白:空格(U+0020)、换行符(U+000A)、回车符(U+000D)、水平制表符(U+0009)、垂直制表符(U+000B)、换页符(U+000C)以及空字符(U+0000)。
注释被编译器当作空白处理。单行注释由 //
开始直至遇到换行符(U+000A)或者回车符(U+000D)。多行注释由 /*
开始,以 */
结束。多行注释允许嵌套,但注释标记必须成对出现。
注释可以包含其他的格式和标记,如 标记格式参考中所述。
空白语法
空白 → 空白项 空白可选
whitespace-item
空白项 → 断行符
空白项 → 注释
空白项 → 多行注释
空白项 → U+0000,U+0009,U+000B,U+000C 或者 U+0020
line-break
断行符 → U+000A
断行符 → U+000D
断行符 → U+000D 接着是 U+000A
comment
注释 → // 注释内容 断行符
multiline-comment
多行注释 →
/*
多行注释内容*/
comment-text
注释内容 → 注释内容项 注释内容可选
comment-text-item
注释内容项 → 任何 Unicode 标量值,除了 U+000A 或者 U+000D
multiline-commnet-text
多行注释内容 → 多行注释内容项 多行注释内容可选
多行注释内容项 → 多行注释.
多行注释内容项 → 注释内容项
多行注释内容项 → 任何 Unicode 标量值,除了
/*
或者*/
下一节:标识符(identifier) 可以由以下的字符开始:大写或小写的字母 A 到 Z、下划线(_)、基本多文种平面(Basic Multilingual Plane)中非字符数字组合的 Unicode 字符以及基本多文种平面以外的非个人专用区字符。在首字符之后,允许使用数字和组合 Unicode 字符。