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.mzph.cn/news/791349.shtml

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

相关文章

C#编写MQTT客户端软件

主要参考C#MQTT编程06--MQTT服务器和客户端(winform版)_c#mqttserver-CSDN博客 但由于使用的.NET版本和MQTT库版本存在差异,因此有些不同。 MQTT协议内容在此不做描述,仅介绍VS使用C#的实现过程。本次使用VS2015,.netframwork4.6。 C#语言本身…

SQL server 查询数据库中所有的表名及行数

SQL server 查询数据库中所有的表名及行数 select a.name,b.rows from sysobjects as ainner join sysindexes as bon a.id b.id where (a.type u)and (b.indid in (0, 1)) and b.rows<50 and b.rows>20 order by a.name, b.rows desc;

Express框架搭建项目 node.js

文章目录 引言Express框架介绍express安装环境准备写一个简单的项目展示 文章总结 引言 Express是一个基于Node.js平台的轻量级Web应用框架&#xff0c;它提供了简洁的API和丰富的功能&#xff0c;使得开发者能够快速地构建Web服务器和API。本文将带领大家从零开始&#xff0c…

GDAL源码剖析(六)之GDAL开发及其调试

GDAL源码剖析&#xff08;六&#xff09;之GDAL开发及其调试-CSDN博客 一、简单的调用 关于GDAL的使用&#xff0c;网上的资料都很多&#xff0c;主要还是要熟悉GDAL的组织结构&#xff0c;类以及类的函数等&#xff0c;熟悉了&#xff0c;使用GDAL就不在话下了。最常用的就是…

苹果手表Apple Watch录了两个半小时的录音,却只能播放4秒,同步到手机也一样,还能修复好吗?

好多人遇到这个情况&#xff0c;用苹果手表Apple Watch录音&#xff0c;有的录1个多小时&#xff0c;有的录了3、4小时&#xff0c;甚至更长时间&#xff0c;因为手表没电&#xff0c;忘记保存等原因造成录音损坏&#xff0c;都是只能播放4秒&#xff0c;同步到手机也一样&…

JavaScript基础代码练习之冒泡排序

一、要求对一个数组进行冒泡排序&#xff0c;并将排序后的结果输出到控制台。在代码中&#xff0c;数组 arr 包含了一组数字&#xff0c;然后使用嵌套的循环来进行冒泡排序。 二、编写代码 <!DOCTYPE html> <html lang"en"><head><meta chars…

软件测试用例(2)

具体的设计方法 -- 黑盒测试 因果图 因果图是一种简化的逻辑图, 能直观地表明程序的输入条件(原因)和输出动作(结果)之间的相互关系. 因果图法是借助图形来设计测试用例的一种系统方法, 特别适用于被测试程序具有多种输入条件, 程序的输出又依赖于输入条件的各种情况. 因果图…

深挖苹果Find My技术,伦茨科技ST17H6x芯片赋予产品功能

苹果发布AirTag发布以来&#xff0c;大家都更加注重物品的防丢&#xff0c;苹果的 Find My 就可以查找 iPhone、Mac、AirPods、Apple Watch&#xff0c;如今的Find My已经不单单可以查找苹果的设备&#xff0c;随着第三方设备的加入&#xff0c;将丰富Find My Network的版图。产…

fastadmin学习08-查询数据渲染到前端

index.php查询&#xff0c;这个是前台的index.php public function index() {$slideImgs Db::name("slideimg")->where("status",,normal)->limit(5)->order(sort,desc)->select();$productList Db::name("product")->where(…

python的垃圾回收

引用计数器为主&#xff0c;标记清除和分代回收为辅 1 引用计数器 在python程序运行时&#xff0c;会根据数据类型的不同找到其对应的结构体&#xff0c;根据结构体中的字段来进行创建相关的数据&#xff0c;然后将对象添加到refchain双像链表中&#xff0c;每个对象中的ob_re…

Java中生成JWT令牌

1. 在pom.xml中引入依赖 <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version> </dependency> 2. 使用Jwts的相关方法生成令牌 import io.jsonwebtoken.Jwts; import io.…

【单片机家电产品学习记录--蜂鸣器】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 单片机家电产品–蜂鸣器 前言 记录学习单片机家电产品内容 已转载记录为主 一、知识点 1电子电路学习笔记&#xff08;17&#xff09;——蜂鸣器 蜂鸣器种类和原理 2疑…

虹科Pico汽车示波器 | 免拆诊断案例 | 2019款别克GL8豪华商务车前照灯水平调节故障

一、故障现象 一辆2019款别克GL8豪华商务车&#xff0c;搭载LTG发动机&#xff0c;累计行驶里程约为10.7万km。车主反映&#xff0c;车辆行驶过程中组合仪表提示前照灯水平调节故障。 二、故障诊断 接车后试车&#xff0c;起动发动机&#xff0c;组合仪表上提示“前照灯水平…

20.安全性测试与评估

每年都会涉及&#xff1b;可能会考大题&#xff1b;多记&#xff01;&#xff01;&#xff01; 典型考点&#xff1a;sql注入、xss&#xff1b; 从2个方面记&#xff1a; 1、测试对象的功能、性能&#xff1b; 2、相关设备的工作原理&#xff1b; 如防火墙&#xff0c;要了解防…

各类系统业务功能架构图整理

一、前言 很多软件系统一直经久不衰&#xff0c;主要这些系统都是一些生产工作经营不可或缺的系统。比如财务系统&#xff0c;商城系统&#xff0c;支付系统&#xff0c;供应链系统&#xff0c;人力资源管理系统&#xff0c;ERP系统等等。这些系统不管大公司还是小公司往往都需…

海外媒体宣发:如何利用6种链游媒体宣发方式推广游戏-华媒舍

在如今的游戏产业中&#xff0c;游戏宣发是非常重要的一环。而链游&#xff08;即以网游为主的游戏&#xff09;的媒体宣发方式在推广游戏中具有重要地位。本文将介绍6种链游媒体宣发方式&#xff0c;帮助游戏开发者和宣发人员更好地推广自己的游戏。 1. 游戏新闻稿 游戏新闻稿…

【科研笔记】知识星球不可选择内容爬虫

知识星球不可选择内容爬虫 1 背景2 实现3 拓展遗留问题1 背景 针对与知识星球中,电脑打开网页不可选择复制粘贴的问题,进行爬虫处理,获取网页的内容,并保存在本地 2 实现 需要下载python,和爬虫的第三方库selenium,可以查看博客中有关selenium的内容进行回顾。当前使用…

【多线程】震惊~这是我见过最详细的ReentrantLock的讲解

一.与synchronized相比ReentrantLock具有以下四个特点: 可中断&#xff1a;synchronized只能等待同步代码块执行结束&#xff0c;不可以中断&#xff0c;强行终断会抛出异常, 而reentrantlock可以调用线程的interrupt方法来中断等待&#xff0c;继续执行下面的代码。 在获取锁…

Windows 禁用 Defender

原文&#xff1a;https://blog.iyatt.com/?p8078 2024.4.4 Windows 11 专业版 23H2 Beta 预览版 进入安全中心&#xff0c;关闭所有&#xff0c;特别是篡改防护选项 打开注册表 地址栏粘粘路径 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defende…

【Clang+LLVM+honggfuzz学习】(二)honggfuzz的安装与试用

书接上篇【ClangLLVMhonggfuzz学习】&#xff08;一&#xff09;LLVM简介、安装和第一个Hello Pass 本篇介绍honggfuzz的安装与简单使用 本文架构&#xff0c;PS:可选择观看哦 前言git安装试用编写测试文件demo.c设置环境变量开始fuzzFuzz-ing疑问 前言 漏洞检测做毕设&#…