D 语言 - 基本语法
D 学习起来非常简单,让我们开始创建我们的第一个 D 程序!
第一个 D 程序
让我们编写一个简单的 D 程序。 所有 D 文件的扩展名为 .d。 因此,将以下源代码放入 test.d 文件中。
import std.stdio; /* 我的第一个 D 程序 */ void main(string[] args) { writeln("test!"); }
假设 D 环境设置正确,让我们使用以下命令运行编程 −
$ dmd test.d $ ./test
我们可以看到以下输出。
test
现在让我们看看D程序的基本结构,以便您轻松理解D编程语言的基本构件。
Import 导入
通过导入的帮助,我们的项目可以使用作为可重用程序部分集合的库。 这里我们导入标准io库,它提供了基本的I/O操作。 上面程序中使用的writeln是D标准库中的函数。 它用于打印一行文本。 D 中的库内容根据要执行的任务类型分为模块。 该程序使用的唯一模块是 std.stdio,它处理数据输入和输出。
Main 主函数
Main 主函数是程序的开始,它决定执行顺序以及程序其他部分的执行方式。
D 中的令牌标记
D 程序由各种令牌标记组成,标记可以是关键字、标识符、常量、字符串文字或符号。 例如,以下 D 语句由四个令牌标记组成 −
writeln("test!");
各个令牌标记是 −
writeln ( "test!" ) ;
注释
注释就像 D 程序中的支持文本一样,它们会被编译器忽略。 多行注释以 /* 开始,以字符 */ 结束,如下所示 −
/* 我在 D 中的第一个程序 */
单个注释是在注释开头使用 // 编写的。
// 我在 D 中的第一个程序
标识符
D 标识符是用于标识变量、函数或任何其他用户定义项的名称。 标识符以字母 A 到 Z 或 a 到 z 或下划线 _ 开头,后跟零个或多个字母、下划线和数字(0 到 9)。
D 不允许在标识符中使用标点符号,例如 @、$ 和 %。 D 是一种区分大小写的编程语言。 因此 Manpower 和 manpower 是 D 中两个不同的标识符。以下是可接受的标识符的一些示例 −
mohd zara abc move_name a_123 myname50 _temp j a23b9 retVal
关键字
下面的列表显示了 D 中的一些保留字。这些保留字不能用作常量、变量或任何其他标识符名称。
abstract | alias | align | asm |
assert | auto | body | bool |
byte | case | cast | catch |
char | class | const | continue |
dchar | debug | default | delegate |
deprecated | do | double | else |
enum | export | extern | false |
final | finally | float | for |
foreach | function | goto | if |
import | in | inout | int |
interface | invariant | is | long |
macro | mixin | module | new |
null | out | override | package |
pragma | private | protected | public |
real | ref | return | scope |
short | static | struct | super |
switch | synchronized | template | this |
throw | true | try | typeid |
typeof | ubyte | uint | ulong |
union | unittest | ushort | version |
void | wchar | while | with |
D 中的空白
仅包含空格(可能带有注释)的行称为空行,D 编译器完全忽略它。
空白是 D 中用来描述空白、制表符、换行符和注释的术语。 空格将语句的一部分与另一部分分隔开,并使解释器能够识别语句中一个元素(例如 int)的结束位置和下一个元素的开始位置。 因此,在下面的声明中 −
local age
local 和age 之间必须至少有一个空白字符(通常是一个空格),以便解释器能够区分它们。 另一方面,在下面的声明中
int fruit = apples + oranges //get the total fruits
fruit 和 = 之间或 = 和 apples 之间不需要空格字符,但如果您希望出于可读性目的,可以随意添加一些空格字符。