当前位置: 首页 > news >正文

【Rust入门教程】hello world程序

文章目录

    • 前言
    • Hello World程序
    • 运行
    • 总结


前言

对于学习任何一种新的编程语言,我们都会从编写一个简单的Hello World程序开始。这是一个传统,也是一个开始。在这篇文章中,我们将一起学习如何在Rust中编写你的第一个程序:Hello World。

Hello World程序

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

这段Rust代码非常简单,但是每一部分都有其特定的含义。让我们逐一解析:

  • fn main() {}:这是Rust程序的主函数。当你运行一个Rust程序时,main函数是第一个被执行的函数。所有的Rust程序都需要有一个main函数作为程序的入口点。fn关键字用于声明一个新的函数。

  • {}:这是函数体的开始和结束。所有在这两个大括号之间的代码都是main函数的一部分。

  • println!():这是一个Rust的宏,用于在控制台上打印一行文本。注意,它后面有一个感叹号,这是因为在Rust中,宏和函数是不同的。如果你看到一个名字后面有感叹号,那么它就是一个宏。

  • "Hello, world!":这是被打印的字符串。在Rust中,字符串需要被包含在双引号中。

运行

使用rustc 你的rust文件即可生成可执行文件,然后使用./hello_world即可运行
在这里插入图片描述

总结

恭喜你,你已经成功编写并运行了你的第一个Rust程序!这只是开始,Rust的世界还有很多等待你去探索和学习。虽然Hello World程序非常简单,但它是你学习Rust的第一步。通过这个程序,你已经学会了如何在Rust中定义函数,以及如何在控制台上打印消息。希望你能继续学习和探索Rust,发现它的强大和美丽。祝你学习愉快!

相关文章:

  • Excel中按列的首行字母顺序,重新排列(VBA脚本)
  • 【附下载】100+AI领域论文及研究报告合集免费领取!
  • Rocky Linux 9 系统OpenSSH CVE-2024-6387 漏洞修复
  • 7/3 第六周 数据库的高级查询
  • 百亿红利市场年增速超20%,3亿银发族带动中老年奶粉三大内卷方向
  • 主流国产服务器操作系统技术分析
  • ubuntu 18 虚拟机安装(4)安装 postgres sql 数据库
  • firewalld防火墙(二)
  • Sping源码(九)—— Bean的初始化(非懒加载)—mergeBeanDefinitionPostProcessor
  • 巴图制自动化Profinet协议转Modbus协议模块连接PLC和电表通信
  • opencv 处理图像去噪的几种方法
  • Spring系统学习-什么是AOP?为啥使用AOP?
  • 将一个立方体对象的值赋给另一个立方体对象
  • 理解论文笔记:基于贝叶斯网络和最大期望算法的可维护性研究
  • ubuntu修改磁盘挂载目录名
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • Debian下无root权限使用Python访问Oracle
  • ECS应用管理最佳实践
  • jquery ajax学习笔记
  • Map集合、散列表、红黑树介绍
  • Mysql优化
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • Service Worker
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • Vue小说阅读器(仿追书神器)
  • 测试如何在敏捷团队中工作?
  • 大型网站性能监测、分析与优化常见问题QA
  • 反思总结然后整装待发
  • 分布式熔断降级平台aegis
  • 简单易用的leetcode开发测试工具(npm)
  • 前端攻城师
  • 延迟脚本的方式
  • 找一份好的前端工作,起点很重要
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • Java总结 - String - 这篇请使劲喷我
  • 组复制官方翻译九、Group Replication Technical Details
  • #1014 : Trie树
  • (11)MATLAB PCA+SVM 人脸识别
  • (52)只出现一次的数字III
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (分布式缓存)Redis哨兵
  • (三)elasticsearch 源码之启动流程分析
  • (原)Matlab的svmtrain和svmclassify
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转载)(官方)UE4--图像编程----着色器开发
  • *Django中的Ajax 纯js的书写样式1
  • .FileZilla的使用和主动模式被动模式介绍
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .net6+aspose.words导出word并转pdf
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • .NET导入Excel数据
  • .NET和.COM和.CN域名区别
  • /var/spool/postfix/maildrop 下有大量文件
  • ;号自动换行