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

网站排名软件优化北京建设网站有哪些公司

网站排名软件优化,北京建设网站有哪些公司,网站php环境搭建,有必要买优化大师会员吗Rust 基础语法学习 文章目录 Rust 基础语法学习hello world变量数据类型整数类型进制表示方法浮点数类型布尔类型字符类型字符串复合类型元组结构体元组结构体 切片类型字符串切片数组切片 不可变变量与可变变量常量注释函数语句与表达式 流程控制语句if else条件判断while循环…Rust 基础语法学习 文章目录 Rust 基础语法学习hello world变量数据类型整数类型进制表示方法浮点数类型布尔类型字符类型字符串复合类型元组结构体元组结构体 切片类型字符串切片数组切片 不可变变量与可变变量常量注释函数语句与表达式 流程控制语句if else条件判断while循环loop循环for循环if let 条件表达式match-arm表达式 hello world rust中的程序从main函数作为入口hello rust fn main() {println!(hello world!);// println!是宏 }变量 使用let关键字定义变量 let k 1;//定义整数变量 krust是强类型的但声明是可以不写明类型会自动推导类型。 如果要加入数据类型也可以使用下面方式 let k:i32 1;// k为i32类型整数数据类型 整数类型 按照比特位长度和有无符号分类 bit-lengthunsignedsigned8u8i816u16i1632u32i3264u64i64128u128i128根据平台、架构决定usizeisize 这种类型命名方式非常直观看到类型即可知道数据长度。 进制表示方法 十进制12_345 16进制0xff 八进制0o77 二进制0b1010_0101 使用下划线避免了数0的麻烦非常直观。 浮点数类型 根据bit位数分32位、64位浮点数使用f32、f64表示。使用let声明浮点数默认使用更高精度的f64。 let f 1.0; //f64 let f:f32 1.0;// 声明 f32类型变量布尔类型 使用bool关键字声明布尔变量值为true或false。 let bl true; let bl false;字符类型 在 Rust 中字符类型是 char。char 类型表示一个 Unicode 标量值Unicode Scalar Value它占用 4 个字节32 位。Unicode 标量值是 Unicode 编码中的第一个级别它包括了符号、文字、数字、标点符号、控制符和其他字符等涵盖了世界上大部分使用的语言和符号。 fn main() {let c1 a;let c2 α;let c3 ;println!(char: {} {} {}, c1, c2, c3); }字符串 String 是一种可变的字符串类型它可以动态地分配内存以容纳字符串数据并且可以在运行时修改字符串内容。 创建字符串如 let mut my_string String::new();//空字符串 let my_string String::from(hello world);复合类型 元组 在Rust中允许将多个不同类型的值组合成一个单独的复合值这种类型称为“元组”。 如 let tuple_demo (11 , 2, is, true);访问元组的方法使用.xx为元素索引。 println!({} {} {} {}, tuple_demo.0, tuple_demo.1, tuple_demo.2, tuple_demo.3);元组一旦定义就不能修改元素。 结构体 rust结构体定义 struct 结构体名称{成员1: 成员1类型,成员2: 成员2类型,... }如定义一个student结构体用于表述学生信息 struct Student {name: String,//姓名id: u32,//学号age: u32//年龄 }初始化 一般的初始化方法如下使用key-value格式 let student Student {name: String::from(zhangsan),id: 001,age: 16 };可以使用外部同名变量进行快速初始化 fn main() {let name String::from(lisi);let id:u32 001;let student Student {name,id,age: 16 };println!(student info: {:?}, student); }也可以使用外部存在的同类型结构体变量更新其余成员 fn main() {let student Student {name: String::from(xiaowang),id: 001,age: 16 };let name String::from(wangwu);let id 002;let new_student Student {name,//使用外部name、id变量初始化id,..student//其余部分使用student变量一次性初始化};println!(new_student info: {:?}, new_student); }元组结构体 元组结构体是一种没有具体字段名的结构体它的字段只有类型而没有字段名。这使得它在表示简单的数据组合时非常有用。 struct Point2D(i32, i32);fn main() {let point Point2D(10, 20);println!(X: {}, Y: {}, point.0, point.1); }切片类型 切片slice是对集合数组、向量等的连续部分进行引用的数据类型。它们允许以安全且高效的方式操作和访问集合的子集而无需复制数据。 切片由两个主要部分组成指向数据的指针和切片的长度。切片语法 let slice: [T] data[start..end];字符串切片 直接上代码领悟 fn main() {let str_demo String::from(hello world);let str1 str_demo[..5]; /* 取0~4 */let str2 str_demo[6..11];/* 取6~10 */let str3 str_demo[6..]; /* 从第6个开始取到最后一个 */let str4 str_demo[..]; /* 从头到尾 */println!(str1: {}, str2: {}, str3: {}, str4: {}, str1, str2, str3, str4);// str1: hello, str2: world, str3: world, str4: hello world }数组切片 fn main() {let array [0, 1, 2, 3, 4, 5];let array_part1 array[0..1]; /* 0 */let array_part2 array[..3]; /* 0 1 2 */let array_part3 array[3..]; /* 3 4 5 */let array_all array[..]; /* all */println!( array[0..1] {:?},array[..3] {:?},array[3..] {:?},array[..] {:?}, array_part1, array_part2, array_part3, array_all);/* outputarray[0..1] [0],array[..3] [0, 1, 2],array[3..] [3, 4, 5],array[..] [0, 1, 2, 3, 4, 5]*/ }不可变变量与可变变量 使用let单独声明的变量是不可变变量声明后值无法修改。如果要声明一个值可以修改的变量需要加入mut关键字来表示变量可变的mutable。 fn main() {let a 1;//a此后无法修改let mut b 2;//b可以修改a 2;//编译会出错b 3;//mut变量是可变的 }常量 使用const关键字声明常量rust中要求常量必须使用全部大写字母表示并使用下划线分割。否则会有编译警告。 const PI_VAL:f64 3.1415926;注释 代码注释与C语言相同使用//表示单行注释/**/表示多行注释。文档注释使用///在文档开头使用这种注释方式可以在导出程序说明文档更方便。 /// 将字符串转换成大写字母并返回 /// /// # Examples /// /// /// let s hello world; /// assert_eq!(HELLO WORLD, to_uppercase(s)); /// fn to_uppercase(s: str) - String {s.to_uppercase() } 函数 基本形式 fn add2number(arg1: i32, arg2: i32) - i32 {println!({}{} {}, arg1, arg2, arg1arg2);return arg1arg2; }对于RUST函数包含参数时必须标明类型。 需要返回值时使用 - 在声明后表明返回值类型。 语句与表达式 rust函数由语句和表达式构成。 语句没有返回值语句通常是执行某些操作、没有返回值的如一些变量声明如 let a 1;表达式有计算步骤且有返回值如 a 7 b 2 c * (a b)通过表达式的返回值可以直接传递到函数返回值如 fn add2number(arg1: i32, arg2: i32) - i32 {println!({}{} {}, arg1, arg2, arg1arg2);arg1arg2 }arg1arg2是一个表达式它的返回值直接传递到函数返回值不用再写return。 流程控制语句 if else条件判断 示例 fn main() {let a 3;if a 2 {println!(a is greater than 2);} else if a 2 {println!(a is less than 2);} else {println!(a is equal to 2);} }while循环 先判断再执行循环体代码 fn main() {let mut count 0;while count 10 {count 1;}println!(Count is {}, count); }loop循环 loop先执行函数体代码在函数体中可以判断进行break 退出循环。 fn main() {let mut count 0;loop {count 1;if count 10 {break;}}println!(Count is {}, count); }for循环 用于遍历或迭代某些集合类型数据。 fn main() {let arr: [i32; 5] [1, 2, 3, 4, 5];// 遍历打印数组中的每个元素for num in arr {println!({}, num);} }if let 条件表达式 有点像c中的三目运算符 fn main() {let condition true;let number if condition { 5 } else { 6 };print!(The value of number is: {}, number); }match-arm表达式 match-arm用于匹配与很多语言中的switch-case类似。 基本语法 match var {type1 { /*do-something*/ },type2 { /*do-something*/ },... }所谓arm就是match表达式内的不同分支情况。 常用在枚举类型的匹配中简单使用下 enum Color{// 颜色枚举Red,/* 红色 */Green,/* 绿色 */Blue,/* 蓝色 */ } fn main() {let ocean_color Color::Blue;match ocean_color {Color::Blue {/* 匹配蓝色 */println!(Ocean is blue);}_ {/* 匹配其他 */println!(Special Ocean);}} }
http://www.hkea.cn/news/14569658/

相关文章:

  • 去哪里找做网站的seo百度点击软件
  • 网站维护运营智能小程序WordPress
  • 长沙装修网站排名网站建设策划模板下载
  • 网站建设推广内容海盐县建设门户网站
  • 自己做的网站怎么调用百度地图杭州设计师网站
  • 洛阳手机网站开发做网站外包公司有哪些
  • 哈尔滨网站建设公司哪家好如何登录到wordpress
  • 宜昌企业网站建设图书拍卖网站开发遇到的问题
  • 网站开发基础教程安康网站建设智能小程序
  • 在线手机网站预览辽宁城乡建设厅网站
  • 建立网站的流程电商之家官网
  • 站长之家psd百度竞价推广课程
  • 做网站费用多少钱各行各业网站建设口碑好
  • 优质高职院校建设网站苏州seo关键词优化排名
  • 淘宝客手机网站苏州网站建设设计公司哪家好
  • 合肥手机网站开发描述个人网站的建站过程
  • 网站交互主要做什么爱战网关键词挖掘查询工具
  • 网站上的动态效果怎么做的2网站建设
  • 旅游门户网站建设区块链媒体网站建设
  • 淄博企业高端网站建设网站开发用php还是.net好
  • 数字广东网络建设有限公司电话做外贸seo优化的上市公司
  • 做汇算清缴在哪个网站下网站收录目录源码
  • 网站开发的一般流程是什么网站的百度推广怎么做
  • 鞍山做网站排名wordpress火车头免密发布模块接口
  • 自己开公司 自己做网站wordpress查询标签
  • 杭州九鸿科技网站开发和网站建设签合同
  • 实业公司网站模板网站建设开票项目是什么
  • 网站托管西安网站可信度建设
  • 外贸网站推做嵌入式开发的公司
  • 仿站WordPress开发网站建设公司