Rust-01 Hello Rust 10分钟上手编写第一个Rust程序 背景介绍 发展历史 环境配置 升级打怪的必经之路

请添加图片描述

背景介绍

Rust 是一种多范式、通用的编程语言,强调性能、类型安全和并发性。它通过一个称为“借用检查器”的机制在编译时追踪所有引用的对象生命周期,以强制实现内存安全,即确保所有引用都指向有效的内存,而不需要垃圾收集器。

发展历史

Rust 最初由 Mozilla 研究员 Graydon Hoare 于 2006 年作为个人项目开始开发。Mozilla 从 2009 年开始赞助这个项目,并在 2010 年正式宣布。Rust 的第一个稳定版本 1.0 在 2015 年发布,标志着它已经准备好用于生产环境。自那以后,Rust 被包括 Amazon、Discord、Dropbox、Google(Alphabet)、Meta 和 Microsoft 在内的多家公司采用

语言优势

Rust 被设计为系统级编程语言,具有以下几个关键特性:

  • 内存安全:Rust 强制执行内存安全,无需垃圾收集器,通过所有权和生命周期的概念来管理内存
  • 并发安全:Rust 的设计旨在安全地处理并发操作,避免数据竞争
  • 性能:Rust 提供与 C 相当的性能,支持细粒度的内存控制
  • 跨平台:Rust 支持多种平台,包括 Windows、MacOS、Linux 等
  • 工具链:Rust 拥有强大的工具链,包括 Cargo(包管理器和构建工具)、Rustfmt(代码格式化工具)和 Clippy(代码分析工具)

配置环境

目前我是在Mac上,如果你是别的操作系统,请访问:Rust 官方文档

curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

创建文件

# 创建文件夹
mkdir test_rust && cd test_rust
# 创建文件
vim test01.rs

编写代码

fn main() {println!("Hello, world!");
}

编译代码

rustc test01.rs

在这里插入图片描述

运行代码

./test01

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2978502.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【Git教程】(十五)二分法排错 — 概述及使用要求,执行过程及其实现(用二分法人工排错或自动排错),替代解决方案 ~

Git教程 二分法排错 1️⃣ 概述2️⃣ 使用要求3️⃣ 执行过程及其实现3.1 用二分法人工排错3.2 用二分法自动排错 4️⃣ 替代解决方案 在开发过程中,我们经常会突然遇到一个错误,是之前早期版本在成功通过测试时没有出现过的。这时候,时下较…

Linux thermal框架介绍

RK3568温控 cat /sys/class/thermal/thermal_zone0/temp cat /sys/class/thermal/thermal_zone1/temp cat /sys/class/thermal/cooling_device0/cur_state cat /sys/class/thermal/cooling_device1/cur_state cat /sys/class/thermal/cooling_device2/cur_state thermal_zone…

负氧离子监测系统适合景区使用吗

TH-FZ4负氧离子监测系统适合景区使用吗?答案是毫无疑问的,负氧离子监测系统是一种专门用于监测空气中负氧离子浓度的设备,结合了防腐木的结构优势和负氧离子监测技术,广泛应用于旅游景区、生态园区、森林公园等地方。这种系统通过…

Axure糖尿病健康管理APP原型 (知识科普/病友社区/远程医生会诊/购物商城/血糖监测/饮食监测)

作品概况 页面数量:共 50 页 源文件格式:rp格式,兼容 Axure RP 9/10,非程序软件无源代码 应用领域:医疗健康、慢病管理、糖尿病管理 作品特色 本作品为Axure糖尿病健康管理APP端原型图,设计规范内容清晰…

SQL的基础语句

1、select语句 select colums from table_name 2、条件语句 #查询出查询出用户id为1和3的用户记录 IN 操作符允许我们在 WHERE 子句中规定多个值。 select * from student where id in (1,3) #查询出所有姓王的同学 模糊查询 like 通配符(% 任意多个字符 _单个字符) #下例…

达芬奇调色:色彩理论入门

写在前面 整理一些达芬奇调色的笔记博文内容涉及: 一级调色是什么,以及 调色素材格式 log,raw,rec709 简单认知理解不足小伙伴帮忙指正 不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候&#…

【剪映专业版】03立体自动翻页

【剪映专业版】立体自动翻页制作 1.导入素材,图片或视频均可 2.将素材2拖动至素材1的上方,点击蒙版,选择线性蒙版,并旋转为90度。 3.复制素材1,并拖动到素材2上方,分割并删除后半部分,点击蒙版…

Innodb之Doublewrite Buffer

Innodb 事件流程 Doublewrite Buffer InnoDB 存储引擎的 Doublewrite Buffer(双写缓冲区)是一种用于数据完整性和恢复的关键机制。它是为了在数据库发生崩溃时保护数据不受损坏设计的。下面将详细介绍 Doublewrite Buffer 的工作原理、目的以及其对性能…

echarts柱形图实现2.5D

思路:使用markpoint option {title: {text: Rainfall vs Evaporation,subtext: Fake Data},tooltip: {trigger: axis},legend: {data: [Rainfall, Evaporation]},toolbox: {show: true,feature: {dataView: { show: true, readOnly: false },magicType: { show: t…

一文了解什么是私有化部署

在当今数据驱动的商业环境中,企业对于数据的处理和传输需求日益增长,这使得私有化部署成为了一种受到青睐的数据管理策略。私有化部署不仅能够提供更高的数据安全性和隐私保护,还能让企业根据自身需求定制解决方案,从而更有效地控…

你们项目日志是如何处理的???

ELK日志采集系统 1.什么是ELK ELK 是一套流行的数据搜索、分析和可视化解决方案,由三个开源项目组成,每个项目的首字母合起来形成了“ELK”这一术语: Elasticsearch (ES): Elasticsearch 是一个基于 Apache Lucene 构建的分布式、实时搜索与…

RAG开山之作:结合参数化与非参数化记忆的知识密集型NLP任务新解法

20年RAG刚提出时的论文:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks,也算是RAG的开山之作之一了。 摘要:检索增强生成(RAG)方法结合了预训练语言模型与基于检索的非参数化记忆,通过…

布局香港之零售小店篇 | 香港一人小企与连锁超市的竞争

近年来,内地品牌入驻香港市场开拓业务已成大势所趋。香港特区政府早前公布的「2023年有香港境外母公司的驻港公司按年统计调查」显示,2023年母公司在海外及内地的驻港公司数量高达9039家。内地品牌在香港的成功落地,不仅为香港市民带来了丰富…

rosdep一键修复

External Player - 哔哩哔哩嵌入式外链播放器 rosdep失败原因 通常在执行rosdep init操作时就会报错,问题的核心在于rosdep会访问raw.githubusercontent.com这个网址下的资源,例如https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sour…

Leetcode 119 杨辉三角 II

目录 一、问题描述二、示例及约束三、代码方法一:递推方法二:线性递推 四、总结 一、问题描述 给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。   在「杨辉三角」中,每个数是它左上方和右上方的数的和。   自我…

运行Java或Python的时候,Git是必要的吗?

在运行Java或Python代码时,Git并不是必需的,但它可以成为一个非常有用的工具,特别是在团队协作、版本控制和代码管理方面。 Git的作用和优势 版本控制: Git是一个分布式版本控制系统,可以跟踪文件的更改历史&#xff…

CodeGemma初探

什么是 CodeGemma CodeGemma是一系列强大而轻量级的模型的集合,可以执行各种编码任务,包括填充中间代码补全、代码生成、自然语言理解、数学推理和指令跟随。 版本: instruct:7B, 这个版本专门针对自然语言到代码聊天和指令跟随…

租房管理|基于SprinBoot+vue的租房管理系统(源码+数据库+文档)

租房管理目录 基于SprinBootvue的租房管理系统 一、前言 二、系统设计 三、系统功能设计 前台 后台 管理员 订单信息管理 屋主申诉管理 屋主权限 房源信息管理 订单信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获…

阿里云mysql8.0 this is incompatible withsql mode=only full group by

阿里云RDS中mysql5.6升级为8.0后,出现如下问题: ### Error querying database. Cause:java.sql.SQLSyntaxErrorException: Expression #1 of SELECT listis not in GROUP BY clause and contains nonaggregatedcolumn temp.product_id which is not fun…

陪诊小程序开发:守护健康,温暖陪伴每一步

在繁忙的都市生活中,每个人都可能面临就医的困扰。面对陌生的医院环境、复杂的就诊流程,很多人感到无助和迷茫。陪诊小程序的开发,旨在通过科技与服务的融合,为用户带来更加贴心、便捷的陪诊体验,守护健康,…