Rust之抽空学习系列(一)—— Hello World

Rust学习抽空学习系列(一)

1、简单创建Hello World项目

环境啥的先配置完,按照官网的教程没几步,主要就是cargorustc
http://rust.p2hp.com/tools/install

首先,初始化一个项目结构,用到cargo init命令,在创建好的目录里初始化项目结构

这个命令会在当前目录进行项目结构初始化,将当前目录作为项目容器

当然,如果还没有创建项目的目录的话可以直接使用cargo new命令完全创建一个新的项目

shell 复制代码
cargo init

在当前目录结构初始化完毕后,生成的也就以下这几个文件:

  • src/:源代码目录
  • main.rs:预生成的入口文件,里面有个main()方法,可以输出"Hello, world!"
  • Cargo.toml:项目构建相关的配置文件,项目复杂的时候用处很大

    点击"运行",执行一下main.rs文件,会发现目录里又会多出几个文件

    这些都是程序运行才生成的文件(target\目录以及Cargo.lock
    程序运行完毕,输出"Hello, world!",这便是第一个程序啦~~

    程序运行的时候,会生成可执行文件,放到项目的target\debug\目录下

    直接运行rust-app-2024同样可以得到刚刚的输出结果

2、聊一聊Hello World内容

rust 复制代码
fn main() {
    println!("Hello, world!");
} 

以上便是这个简单的程序的全部代码内容,将其拆解一下:

  • main函数
  • 字符串参数
  • 分号

main函数

首先,如下结构在Rust中表示一个函数,并且这还是一个特殊的函数------main函数

这个函数在可执行的Rust程序中总是最先被执行的 ,并且没有参数和返回值

{}之间便是main函数具体执行的业务逻辑,在这里便是输出"Hello, world!"

rust 复制代码
fn main() {
    
} 

println!("Hello, world!");这行作为具体业务的代码本身是一个 ,宏是以!结尾的,比如目前的println!,而普通的函数是没有的,但这目前并不会影响我们的理解

参数

这里的参数是指宏调用时传入的参数,即"Hello, world!",这显然是一个字符串,或者更确切一点应该是字符串字面量,它告诉宏需要打印什么内容

分号

Rust使用英文分号;表示一条语句的完结,这和许多其他编程语言一样

这便是一个平平无奇的Rust的Hello World,构成简单,除了宏(也没啥理解障碍,暂且当成函数看吧),好像并没有什么新东西出现,甚至都不需要导入包,挺简洁的~~,第一印象不错呢

https://kaisery.github.io/trpl-zh-cn/ch01-02-hello-world.html

相关推荐
wuyk55518 分钟前
12.归并排序:分治思想的稳定排序算法
开发语言·数据结构·算法·排序算法
吴声子夜歌22 分钟前
ApacheCommons——commons-text(模板替换与文本算法)
java·开发语言·算法·apache
点心的游戏开发世界1 小时前
GDScript 入门笔记(五):函数
笔记·游戏引擎·godot
quantdash_cc1 小时前
量化数据源怎么选:稳定性、实时性和数据完整性到底该如何权衡?
开发语言·python·数据分析·量化交易·股票数据·quantdash
萧瑟余晖1 小时前
Java深入解析篇五十四之对象模型详解
java·开发语言
张文是假的啊2 小时前
Java | record | Controller逻辑
java·开发语言
不甘先生2 小时前
Go 中 type、方法与指针接收者:从 str_name.Name() 看懂 Go 的类型系统
开发语言·后端·golang
wp123_13 小时前
硬件设计笔记:1μH功率电感选型实战——线艺 XFL4020-102MEC 与 国产 pin to pin MVLH4020-1R0M 详细参数测评
笔记·科技·硬件架构·硬件工程
quantdash_cc3 小时前
Python 股票 K 线数据质量校验:字段、缺失值、重复行和价格异常
开发语言·python·数据分析·量化交易·股票数据·quantdash
Zenova EdgeOS3 小时前
工业网关重试机制:从固定间隔到指数退避的工程实战
开发语言·网络·php