D LanguageD语言入门


备注

D是一种具有类C语法和静态类型的系统编程语言。它将效率,控制和建模功能与安全性和程序员生产力相结合。

版本

更新日志发布日期
d http://www.digitalmars.com/d/1.0/changelog.html 2007-01-23
D2 https://dlang.org/changelog/2.000.html 2007-06-17

你好,世界

import std.stdio;

// Let's get going!
void main()
{
    writeln("Hello World!");
}
 

要编译和运行,请将此文本另存为名为main.d 的文件。从命令行运行dmd main.d 来编译程序。最后,运行./main 以在bash shell中执行程序,或者可以单击Windows上的可执行文件。

你好,世界!

要创建经典的“Hello,world”打印程序,请使用包含以下代码的文本编辑器创建名为hello.d 的文件:

import std.stdio;

void main() {
    writeln("Hello, World!");    //writeln() automatically adds a newline (\n) to the output
}
 

说明:

import std.stdio
 

该行告诉编译器将使用标准库模块std.stdio 定义的函数。只要编译器知道在哪里寻找它们,就可以导入任何模块。许多功能都是D大量标准库的一部分。

void main() {
 

该行声明函数main ,返回void 。请注意,与C和C ++不同,D允许main为void 类型。函数main 是特殊的,因为它是程序的入口点,即,这是程序执行开始的地方。关于功能的一些注意事项:

  • 函数的名称可以是以字母开头的任何内容,由字母,数字和下划线组成。

  • 预期参数将是逗号分隔的变量名称列表及其数据类型。

  • 期望函数返回的值可以是任何现有数据类型,并且它必须与函数中return语句中使用的表达式类型相匹配。

花括号{ … } 成对使用,表示代码块的开始和结束位置。它们可以在很多方面使用,但在这种情况下,它们指示函数的开始和结束位置。

writeln("Hello, World!");
 

writeln 是在std.stdio 中声明的函数, std.stdio 其agruments写入stdout 。在这种情况下,它的参数是"Hello, World" ,它将被写入控制台。可以使用各种格式字符,类似于C的printf 使用的字符,如\n\r \n 等。

每个语句都需要用分号终止。

注释用于向阅读代码的人员指示某些内容,并被编译器视为空白。在上面的代码中,这是一个评论:

//writeln() automatically adds a newline (\n) to the output
 

这些是编译器忽略的代码片段。在D中有三种不同的评论方式:

  1. // -注释在同一行中的所有文本,之后//
  2. /* comment text */ - 这些对多行注释很有用
  3. /+ comment text + - 这些也是多行评论

它们非常有用,可以向同事开发人员传达一个函数/代码片段。

编译和运行程序

要运行此程序,必须首先将代码编译为可执行文件。这可以在编译器的帮助下完成。

要使用DMD编译,参考D编译器,打开终端,导航到您创建的文件hello.d 的位置,然后运行:

dmd hello.d

如果未找到错误,编译器将输出以源文件命名的可执行文件。现在可以通过键入来运行

./hello

执行后,程序将打印出Hello, World! ,然后换行。

安装或设置

D编程语言的标准编译器DMD可以在所有主要平台上运行。要安装DMD,请看这里 。要通过命令行安装,您可以运行命令(在D网站上找到):

curl -fsS https://dlang.org/install.sh | bash -s dmd
 

包裹经理

Arch Linux

pacman -S dlang
 

巧克力味

choco install dmd
 

Gentoo的

layman -f -a dlang
 

OSX Homebrew

brew install dmd
 

于Debian / Ubuntu

在Debian / Ubuntu发行版上安装需要将APT存储库添加到源列表中。

wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list
wget -qO - https://dlang.org/d-keyring.gpg | sudo apt-key add -
apt-get update
apt-get install dmd-bin
 

其他编译器

LDC是一个D编译器,它使用官方DMD编译器前端和LLVM作为其后端。

GDC是一个使用GCC后端生成代码的D编译器。

集成开发环境

为了使生活更轻松,您可能还需要安装IDE(集成开发环境)。在d-语言维基对所有平台上提供IDE和插件的列表在这里

从字符串中读取值

import std.format;

void main() {
    string s = "Name Surname 18";
    string name, surname;
    int age;
    formattedRead(s, "%s %s %s", &name, &surname, &age);
    // %s selects a format based on the corresponding argument's type
}
 

有关格式字符串的官方文档,请访问: https//dlang.org/phobos/std_format.html#std.format