RUST语言基本数据类型认识

1.RUST的基本数据类型参考:

2.使用RUST数据类型声明变量并赋值:

    let a:i8=1;//8位有符号整数let a1:u8=2;//8位无符号整数let b:i16=1;//16位有符号整数let b1:u16=2;//16位无符号整数let c:i32=1;//32位有符号整数let c1:u32=2;//32位无符号整数let d:i64=1;//64位有符号整数let d1:u64=2;//64位无符号整数let e:i128=1;//128位有符号整数let e1:u128=2;//128位无符号整数//32位架构表示32位//64位架构表示64位let g:isize=1;//32/64位有符号整数let g1:usize=2;//32/64位无符号整数

3.格式化输出变量赋值: 

  通过printlf!  与 {} 点位行号 进行格式化输出

    //32位架构表示32位//64位架构表示64位let g:isize=1;//32/64位有符号整数let g1:usize=2;//32/64位无符号整数println!("isize:g->{},usize:g1->{}",g,g1);//默认isize与usize类型,

4.RUST中进制表示:

    //RUST中进制表示,变量名建议小写,单词间用_来隔开let _decimal =98_222;//十进制  0~9let _hex	=0xff;//十六进制 0~flet _octal	=0o77;//八进制 0~7let _binary =	0b1111_0000;//二进制 0~1let _my_byte:u8 =b'A';//字节 0~255println!("{},{},{},{},{}",_decimal,_hex,_octal,_binary,_my_byte);

5.浮点数声明及使用

    //浮点数let h = 6.80;//默认为64位浮点数let h1:f32 = 3.14;//赋值时指定浮点类型为32位浮点数println!("h:f64->{},h1:f32->{}",h,h1);

7.布尔类型

     //布尔类型let is_ok=false;let is_ok:bool = true;if is_ok {println!("{}",is_ok);}

8.字符

//字符类型let cc = 'K';let dd:char = 'O';

9.元组使用

//元组使用//指定数据类型let tup:(i8,i16,i32)=(1,2,3);println!("元组中元素1:{},元组中元素2:{},元组中元素3:{}",tup.0,tup.1,tup.2);//自动推导数据类型let tup1=(888,3.12159,cc);//取元组中返回值let (r,r1,r2)=tup1;//接收元组返回值给指定命名临时变量println!("r:{},r1:{},r2:{}",r,r1,r2);

10.数组使用

//数组使用let arr=[1,3,5,7,9];//类型自动推导为i32:5  类型为i32 长度为5let arr1:[u8;3]=[255,18,90];//u8最大值为255,最小值为0  注意数据类型取值范围let arr2:[u32;4]=[555,65536,129,u32::max(0, 0)];//u32最小值为0,不能赋值负数//如果要使用负数,使用i开始的数据类型如i8,i16,i32let arr3:[i8;3]=[-128,127,99];//i8取值范围为-128~+127//字符串数组使用let arr_strings = ["Hello","World"];//指定默认元素及数组创建数组let arr_def_int = [8;8];//遍历数组for v in arr_def_int {println!("{}",v);}//数组下标使用println!("{},{}",arr_strings[0],arr_strings[1]);

完整示例代码:

fn main() {println!("RUST语言基本数据类型认识");let a:i8=1;//8位有符号整数let a1:u8=2;//8位无符号整数let b:i16=1;//16位有符号整数let b1:u16=2;//16位无符号整数let c:i32=1;//32位有符号整数let c1:u32=2;//32位无符号整数let d:i64=1;//64位有符号整数let d1:u64=2;//64位无符号整数let e:i128=1;//128位有符号整数let e1:u128=2;//128位无符号整数//32位架构表示32位//64位架构表示64位let g:isize=1;//32/64位有符号整数let g1:usize=2;//32/64位无符号整数println!("isize:g->{},usize:g1->{}",g,g1);//默认isize与usize类型,//RUST中进制表示,变量名建议小写,单词间用_来隔开let _decimal =98_222;//十进制  0~9let _hex	=0xff;//十六进制 0~flet _octal	=0o77;//八进制 0~7let _binary =	0b1111_0000;//二进制 0~1let _my_byte:u8 =b'A';//字节 0~255println!("{},{},{},{},{}",_decimal,_hex,_octal,_binary,_my_byte);//浮点数let h = 6.80;//默认为64位浮点数let h1:f32 = 3.14;//赋值时指定浮点类型为32位浮点数println!("h:f64->{},h1:f32->{}",h,h1);//布尔类型let is_ok=false;let is_ok:bool = true;if is_ok {println!("{}",is_ok);}//字符类型let cc = 'K';let dd:char = 'O';//元组使用//指定数据类型let tup:(i8,i16,i32)=(1,2,3);println!("元组中元素1:{},元组中元素2:{},元组中元素3:{}",tup.0,tup.1,tup.2);//自动推导数据类型let tup1=(888,3.12159,cc);//取元组中返回值let (r,r1,r2)=tup1;//接收元组返回值给指定命名临时变量println!("r:{},r1:{},r2:{}",r,r1,r2);//数组使用let arr=[1,3,5,7,9];//类型自动推导为i32:5  类型为i32 长度为5let arr1:[u8;3]=[255,18,90];//u8最大值为255,最小值为0  注意数据类型取值范围let arr2:[u32;4]=[555,65536,129,u32::max(0, 0)];//u32最小值为0,不能赋值负数//如果要使用负数,使用i开始的数据类型如i8,i16,i32let arr3:[i8;3]=[-128,127,99];//i8取值范围为-128~+127//字符串数组使用let arr_strings = ["Hello","World"];//指定默认元素及数组创建数组let arr_def_int = [8;8];//遍历数组for v in arr_def_int {println!("{}",v);}//数组下标使用println!("{},{}",arr_strings[0],arr_strings[1]);}

输出结果 :

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java零基础入门-java8新特性(上篇)

一、本期教学目标 java8有哪些新特性什么是函数式接口什么是Lambda表达式掌握Stream ApiStream和Collect集合区别Stream创建方式Stream操作三步骤 二、概述 上几期,我们是完整的学完了java异常类的学习及实战演示、以及学习了线程进程等基础概念,而这一…

VSCode调试C++

1、环境准备 1.1、g的安装与使用 1.1.1、安装 方式一:Xcode安装 苹果的开发集成工具是Xcode.app,其中包含一堆命令行工具。 在 App store 可以看到其大小有好几个G,有点大。 方式二:Command Line Tools 安装 Command Line Too…

算法知识点汇总

知识点 1. 求二进制中1的个数 int get_count(int x)//返回x的二进制有多少个1 int get_count(int x) {int res 0;while (x){res ;x - x & -x;}return res; }2. 建树,和树的DFS 记得初始化头节点 const int N 1e5 10, M N * 2; int h[N], e[M], ne[M], id…

【智能算法】猎豹优化器(CO)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献 1.背景 2022年,MA Akbari等人受到自然界中猎豹捕猎行为启发,提出了猎豹优化器(The Cheetah Optimizer,CO)。 2.算法原理 2.1算法思想 CO法对猎…

Shell GPT:直接安装使用的chatgpt应用软件

ShellGPT是一款基于预训练生成式Transformer模型(如GPT系列)构建的智能Shell工具。它将先进的自然语言处理能力集成到Shell环境中,使用户能够使用接近日常对话的语言来操作和控制操作系统。 官网:GitHub - akl7777777/ShellGPT: *…

使用vuepress搭建个人的博客(一):基础构建

前言 vuepress是一个构建静态资源网站的库 地址:VuePress 一般来说,这个框架非常适合构建个人技术博客,你只需要把自己写好的markdown文档准备好,完成对应的配置就可以了 搭建 初始化和引入 创建文件夹press-blog npm初始化 npm init 引入包 npm install -D vuepress…

【C++】C++11类的新功能

👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》《算法》 🌝每一个不曾起舞的日子,都是对生命的辜负 目录 前言 默认成员函数 类成…

Windows下编译TinyXML(XML文件解析)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 TinyXML是什么? TinyXML是一个轻量级的C XML解析器,它提供了一种简单的方法来解析和操作XML文档。TinyXM…

Camtasia Studio2024汉化版下载(功能强大的屏幕录制和视频编辑软件)

Camtasia Studio 2024是一款功能强大的屏幕录制和视频编辑软件,由TechSmith公司开发。这款软件不仅能够帮助用户轻松地记录电脑屏幕上的任何操作,还可以将录制的视频进行专业的编辑和制作,最终输出高质量的视频教程、演示文稿、培训课程等。 …

Termius for Mac v8.4.0激活版下载

Termius for Mac是一款功能强大的多协议远程管理软件,专为开发人员、系统管理员和网络专业人士设计。它支持多种远程连接协议,如SSH、Telnet、RDP、VNC和RFB等,使得用户可以轻松连接到不同类型的远程服务器和设备。 软件下载:Term…

企业家升维认知:引领企业持续发展的关键

一、引言 在快速变化的时代背景下,企业家面临着前所未有的挑战与机遇。新东方教育科技集团董事长俞敏洪曾深刻指出:“企业家本身要不断升维自己的认知,才能带领企业持续发展。”这句话不仅揭示了企业家认知升维的重要性,也为我们…

高效准确!指甲剪盖片视觉检测技术解密

指甲剪的盖片是指指甲剪的一端,通常用来盖住另一端的刀刃部分。指甲剪盖片是指甲剪的重要部分,除了保护刀刃外,还起到美观和便捷的作用。正确使用和保养指甲剪盖片可以延长指甲剪的使用寿命。 本案是对指甲剪盖片最大尺寸长75mm*宽10mm*高3mm…

蓝桥杯算法题:区间移位

题目描述 数轴上有n个闭区间&#xff1a;D1,...,Dn。 其中区间Di用一对整数[ai, bi]来描述&#xff0c;满足ai < bi。 已知这些区间的长度之和至少有10000。 所以&#xff0c;通过适当的移动这些区间&#xff0c;你总可以使得他们的“并”覆盖[0, 10000]——也就是说[0, 100…

vulnhub之devguru靶场提权过程(vulnhub打靶日记)

一、环境搭建 VM版本&#xff1a;17.5.1 build-23298084 攻击机&#xff1a;Kali2024&#xff08;下载地址&#xff1a;https://www.kali.org/&#xff09; 靶机&#xff1a;vulnhub靶场Devguru&#xff08;下载地址&#xff1a;https://www.vulnhub.com/entry/devguru-1,62…

RUST语言函数的定义与调用

1.定义函数 定义一个RUST函数使用fn关键字 函数定义语法: fn 函数名(参数名:参数类型,参数名:参数类型) -> 返回类型 { //函数体 } 定义一个没有参数,没有返回类型的参数 fn add() {println!("调用了add函数!"); } 定义有一个参数的函数 fn add(a:u32)…

llama.cpp运行qwen0.5B

编译llama.cp 参考 下载模型 05b模型下载 转化模型 创建虚拟环境 conda create --prefixD:\miniconda3\envs\llamacpp python3.10 conda activate D:\miniconda3\envs\llamacpp安装所需要的包 cd G:\Cpp\llama.cpp-master pip install -r requirements.txt python conver…

网络基础二——传输层协议UDP与TCP

九、传输层协议 ​ 传输层协议有UDP协议、TCP协议等&#xff1b; ​ 两个远端机器通过使用"源IP"&#xff0c;“源端口号”&#xff0c;“目的IP”&#xff0c;“目的端口号”&#xff0c;"协议号"来标识一次通信&#xff1b; 9.1端口号的划分 ​ 0-10…

说一说Redis的Bitmaps和HyperLoLog?

本篇内容对应 “Redis高级数据类型”小节 和 “7.5 网站数据统计”小节 对应视频&#xff1a; Redis高级数据结构 网站数据统计 1 什么是UV和DAU&#xff1f; DAUUV英文全称Daily Active UserUnique Visotr中文全称日活跃用户量独立访客如何统计数据通过用户ID排重统计数据通…

Python Django全文搜索库之django-haystack使用详解

概要 Django Haystack库是一个用于在Django项目中实现全文搜索功能的强大工具。它集成了各种搜索引擎,如Elasticsearch、Whoosh等,为开发者提供了灵活且高效的搜索解决方案。在本文中,将深入探讨Django Haystack库的安装、配置和应用,以及如何利用其丰富的功能来实现高级全…

LabVIEW齿轮箱噪声监测系统

LabVIEW齿轮箱噪声监测系统 齿轮箱作为机械设备的“心脏”&#xff0c;其健康状态对设备的性能有着重要的影响。传统的齿轮箱监测方法依赖于直接的振动信号分析&#xff0c;但这种方法不仅成本高昂&#xff0c;而且在安装和拆卸过程中可能对设备造成损害。针对这些问题&#x…