Running Your First Cangjie Program
Inspect one language lane at a time so line-level text and code deltas stay readable.
Diff Lane
English
0 modified sections0 code block delta0 anchor delta
Diff Lane
中文
1 modified sections8 code block delta2 anchor delta
modified运行第一个仓颉程序textcode-8 lines
v1.0.5
Section Text
1
万事俱备,开始编写和运行第一个仓颉程序吧!2
3
首先,请在适当目录下新建一个名为 `hello.cj` 的文本文件,并向文件中写入以下仓颉代码:4
5
<!-- verify -->6
7
8
在这段代码中,使用了仓颉的注释语法,可以在 `//` 符号之后写单行注释,也可以在一对 `/*` 和 `*/` 符号之间写多行注释,这与 C/C++ 等语言的注释语法相同。注释内容不影响程序的编译和运行。9
10
然后,请在此目录下执行如下命令:11
12
13
这里仓颉编译器会将 `hello.cj` 中的源代码编译为此平台上的可执行文件 `hello`,在命令行环境中运行此文件,将看到程序输出了如下内容:14
15
16
> **注意:**17
>18
> 以上编译命令是针对 Linux 和 macOS 平台的,如果使用 Windows 平台,只需要将编译命令改为 `cjc hello.cj -o hello.exe` 即可。Code 1 · cangjie
1
// hello.cj2
main() {3
println("你好,仓颉")4
}Code 2 · bash
1
cjc hello.cj -o helloCode 3 · text
1
你好,仓颉v1.1.0
Section Text
1
万事俱备,开始编写和运行第一个仓颉程序吧!Code 1 · cangjie
1
Code 2 · bash
1
Code 3 · text
1
added使用 cjc 编译
v1.1.0
1
使用 cjc 编译2
3
首先,请在适当目录下新建一个名为 `hello.cj` 的文本文件,并向文件中写入以下仓颉代码:4
5
<!-- verify -->6
7
8
在这段代码中,使用了仓颉的注释语法,可以在 `//` 符号之后写单行注释,也可以在一对 `/*` 和 `*/` 符号之间写多行注释,这与 C/C++ 等语言的注释语法相同。注释内容不影响程序的编译和运行。9
10
然后,请在此目录下执行如下命令:11
12
13
这里仓颉编译器会将 `hello.cj` 中的源代码编译为此平台上的可执行文件 `hello`,在命令行环境中运行此文件,将看到程序输出了如下内容:14
15
16
> **注意:**17
>18
> 以上编译命令是针对 Linux 和 macOS 平台的,如果使用 Windows 平台,只需要将编译命令改为 `cjc hello.cj -o hello.exe` 即可。19
20
// hello.cj21
main() {22
println("你好,仓颉")23
}24
25
cjc hello.cj -o hello26
27
你好,仓颉added使用 cjpm 编译运行
v1.1.0
1
使用 cjpm 编译运行2
3
除了直接调用 `cjc` 编译器外,您还可以使用仓颉项目管理工具 `cjpm` (Cangjie Project Manager) 来快速创建、管理和运行仓颉项目。4
5
请按照以下步骤创建第一个仓颉项目:6
7
1. 创建一个新的目录 `hello_cjpm` 用于存放项目文件,并进入该目录。8
9
2. 使用 `cjpm init` 命令初始化一个新的仓颉模块。10
11
12
执行成功后,命令行会提示 `cjpm init success`。此时,`cjpm` 会在当前目录下生成默认的项目结构:13
14
15
其中默认生成的源码文件 `main.cj`,其内容如下:16
17
<!-- verify -->18
19
20
此外执行 `cjpm init --path hello_cjpm`,`cjpm` 会自动创建 `hello_cjpm` 文件夹并在其中完成初始化。21
22
在项目根目录下(即 `cjpm.toml` 所在目录),直接执行以下命令即可编译并运行程序:23
24
25
`cjpm` 会自动处理依赖检查、编译构建以及运行可执行文件的全过程。命令行将显示如下输出:26
27
cjpm init28
29
hello_cjpm30
├── cjpm.toml // 项目的配置文件31
└── src32
└── main.cj // 默认生成的源码文件33
34
// main.cj35
package hello_cjpm // 声明当前源文件属于 hello_cjpm 包36
37
main(): Int64 {38
println("hello world")39
return 040
}41
42
cjpm run43
44
hello world45
46
cjpm run finished