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

外贸多语言网站建设政务网站建设工作方案

外贸多语言网站建设,政务网站建设工作方案,有没类似建设通的免费网站,百度定位店铺位置怎么设置Rust通用编程概念 1.变量和可变性1.执行cargo run2.变量3.变量的可变性4.常量5.遮蔽5.1遮蔽与mut区别1.遮蔽2.mut 2.数据类型1.标量类型1.1整数类型1.2浮点数类型1.3数字运算1.4布尔类型1.5字符类型 2.复合类型2.1元组类型2.2数组类型1.访问数组2.无效的数组元素访问 3.函数3.1… Rust通用编程概念 1.变量和可变性1.执行cargo run2.变量3.变量的可变性4.常量5.遮蔽5.1遮蔽与mut区别1.遮蔽2.mut 2.数据类型1.标量类型1.1整数类型1.2浮点数类型1.3数字运算1.4布尔类型1.5字符类型 2.复合类型2.1元组类型2.2数组类型1.访问数组2.无效的数组元素访问 3.函数3.1定义函数3.2参数1.参数使用的注意事项 3.3语句和表达式3.4带有返回值的函数 4注释4.1单行注释4.2多行注释4.3文档注释 5.控制流5.1if表达式5.2使用else if处理多重条件5.3在let语句中使用if5.4使用循环重复执行1.使用loop重复执行代码1.1从循环返回 2.while条件循环3.使用for遍历集合 1.变量和可变性 fn main() {let x 10;println!(The value of x is:{}, x);x 12;println!(The value of x is:{}, x) }1.执行cargo run 下图就是执行之后的报错信息 2.变量 rust定义的普通变量不能修改 let [变量名] [变量值]3.变量的可变性 rust虽然普通定义的变量不可修改可以添加关键字mut,让变量具有可变性 let mut [变量名] [变量值]fn main(){let mut x 10;println!(The value of x is:{},x);x 12;println!(The value of x is:{},x); }cargo runThe value of x is: 5 The value of x is: 64.常量 常量是绑定一个常量名且不允许更改的值常量不允许使用mut常量使用const不是let关键词来声明并且值的类型必须注明常量可以在任意作用域内声明 const THREE_HOURS_IN_SECONDS: u32 60 * 60 * 3;5.遮蔽 fn main(){let x 8;let x x 1;{let x x * 2;println!(The value of x in the inner scope is:{},x);// 18}println!(The value of x is: {},x);// 9 }首先将数值8绑定到x通过重复使用let x 来遮蔽之前的x并取原来的值1作用域内第三个let语句同样遮蔽前面的x并且取之前值 * 2作用域结束内部遮蔽结束并且x恢复为9 5.1遮蔽与mut区别 1.遮蔽 通过let关键字再一次有效的创建一个新的变量 let spaces ;// 字符串 let spaces spaces.len();// 数字类型2.mut mut关键词主要是对变量的修改 let spaces ;// 字符串 // spaces spaces.len();// error数字类型赋值类型发生变化2.数据类型 Rust的每个值都有确切的数据类型以下将主要展开两种数据类型:标量类型和复合类型Rust是一种静态类型的语言 // cosider giving guess a type // let guess 90.parse().expect(Not a number!); let guess: u32 90.parse().expect(Not a number!);1.标量类型 1.1整数类型 长度有符号类型无符号类型8位i8u816位i16u1632位i32u3264位i64u64128位i128u128archisizeusize 有符号类型的数字范围是-2^(n-1) ~ 2^(n-1)-1无符号类型的数字范围是0~2^(n)-1isize和usize类型取决于程序运行的计算机体系结构64位架构系统则位64位32位结构系统则为32位isize和usize的主要场景是用作某些集合的索引 1.2浮点数类型 浮点数是带有小数点的数字Rust中的浮点类型也有两种基本类型Rust的浮点型是f32和f64默认浮点类型是f64 fn main(){ let x 2.3; // f64 let y: f32 3.2; //f32}1.3数字运算 rust的所有数字类型都支持数学运算:加、减、乘、除和取模运算整数除法会向下取整 //additionlet sum 5 10;println!({}, sum);// 15//subtractionlet difference 96.6 - 94.7;println!({}, difference);// 1.8999...//multiplicationlet product 4 * 20;println!({}, product);// 80//divisionlet quotient 63.3 / 23.3;let floored 2 / 3;println!({}, quotient);// 2.71673...println!({}, floored);// 0//remainderlet remainder 43 % 5;println!({}, remainder);// 31.4布尔类型 Rust中的布尔类型也有两个可能的值true和false布尔值的大小为1个字节Rust中的布尔值使用bool声明 fn main(){let t true;let f: bool false }1.5字符类型 Rust的char(字符)类型是该语言基本的字母类型Rust的字符类型大小为4个字节表示一个Unicode标量值 fn main(){let c c;let b b;let heart_eyed_cat ;}2.复合类型 复合类型可以将多个值组成一个类型Rust有两种基本的复合类型:元组 和 数组 2.1元组类型 元组是将多种类型的多个值组合到一个复合类型中的基本方式元组的长度是固定的声明后它就无法增产或缩小 fn main(){let tup: (i32,f64,u8) (500,23.3,5); }变量tup绑定到整个元组因为元素被认作是单个复合元素可以使用模式匹配来解构元组的一个值 fn main(){let tup (500,6.2,3);let (x,y,z) tup;println!(The value of y is:{},y);// 6.4}通过模式匹配进行结构外还可以通过 . 连上访问值得索引来直接访问元组元素元组中的第一个索引从0开始 fn main(){let x: (i32,f64,u8) (500,6.3,23);let five_hundred x.0;let six_point_three x.1;let twenty_three x.2;println!({},twenty_three);}2.2数组类型 将多个值组合在一起的另一种方式就是使用数组与元组不同数组的每个元素必须具有相同的类型与其他语言不同数组不同的是Rust中的数组具有固定长度.应用场景 确保始终具有固定数量的元素数组特别有用Vector在Rust里面意为动态数组可变数组Vector类型类似于标准库中提供的集合类型 let arr [12,13,89,56,14];另一种数组初始化方式 // 变量名为arr的数组包含5个元素这些元素的初始值都是3 let arr [3;5]1.访问数组 数组是可以在栈上分配已知固定大小的单个内存块可以使用索引访问数组的元素 let arr [12, 13, 89, 56, 14];let first arr[0];let second arr[1];println!({}, first); // 12println!({}, second); // 13 }2.无效的数组元素访问 访问超出数组末尾的数组元素 use std::io; fn main() {let arr [12, 16, 45, 13, 19];println!(please enter an array index.);let mut index String::new();io::stdin().read_line(mut index).expect(Failed to read line);let index: usize index.trim().parse().expect(Index entered was not a number);let element arr[index];println!(The value of the element at index {} is: {},index, element); }该案例在索引操作使用无效值时导致运行时错误程序退出并提示错误信息未执行后面的println!语句rust将检查你指定的索引是否小于或等于数组长度索引大于或等于数组长度rust会出现panic 3.函数 main函数它是很多程序的入口点Rust代码中的函数和变量名使用下划线命名法规范风格在下划线命名法中所有字母都是小写并使用下划线分隔单词 fn main(){println!(main funcation);another_funcation(); } fn another_function(){println!(another function) }3.1定义函数 Rust中函数定义以 fn 开头后跟着函数名和一对括号大括号告诉编译器函数体在哪开始和结束 3.2参数 函数可以被定义拥有参数参数是特殊变量是函数签名的一分部当函数拥有参数(形参)时这些参数提供具体的值(实参)日常交流中人们倾向于不区分使用parameter 和 argument来表示函数定义中的变量或调用函数时传入的具体值 fn main(){number_function(10); } fn number_function(x: i32){println!(The value of x is:{},x);//10 } 1.参数使用的注意事项 函数签名中必须声明每个参数的类型要求在函数定义中提供类型意味着编译器几乎从不需要你在代码其他位置注明类型来指出你的意图一个函数有多个参数时需要用 逗号隔开 fn main(){print_labeled_measurement(5,h); }fn print_labeled_measurement(value: u32,unit_label: char){println!(The measurement is:{}{},value,unit_label);// 5h } 3.3语句和表达式 函数体由一系列语句组成也可以选择表达式结尾语句是执行一些操作但不返回值的指令表达式计算并产生一个值 //语句和表达式let y 6;println!({}, y);// 语句不会返回值// let x1 (let y 6);let y1 {let x1 5;//行的末尾没有分号表达式末尾加分号那么它就转换为语句而语句不会返回值x1 1};println!(The value of y1 is:{}, y1); // 63.4带有返回值的函数 函数可以向调用它的代码返回值但要在箭头(-)后声明它的类型在Rust中函数的返回值等同于函数体最后一个表达式的值使用return关键字和指定值可以从函数中提前返回大部分函数隐式返回最后一个表达式 fn five() - u32{5 } fn main(){let x five();println!(The value of x is: {}“,x); }谨慎使用分号 fn five_plus(x: u32) - u32{//如果在X1后面加分号表示语句没有返回值将报错// x 1;x 1 } fn main(){let y five_pluse(5);println!({},y); //6 }4注释 4.1单行注释 Rust中惯用的注释形式以两个斜杠开头直到该行尾结束对于超出单行的注释需要在每行的行首加上 // fn main(){//Im feeling lucky todaylet lucky_number 7;// I’m feeling lucky today }4.2多行注释 使用斜杠星号开始和星号斜杠结束可以跨越多行的注释 /* 这是一个做计算的方法注意传值要求 */ fn plus_number(x: u32,y: i32) - u32{x y }4.3文档注释 Rust允许你使用特殊的文档注释来为函数、结构体、枚举等代码元素添加文档注释文档注释以 /// 开始通常紧跟在你要注释的代码元素之前 /// 这是一个文档注释 fn my_function(){}5.控制流 根据条件是否为真来决定是否执行某些代码或根据条件是否为真来重复运行一段代码Rust代码中最常见的用来控制执行流的结构是if表达式和循环 5.1if表达式 if 表达式允许根据条件执行不同的代码分支 fn main(){let number 3;if number 5 {println!(condition was true);}else{println!(condition was false);} }需要注意的事代码中的条件必须是bool值 5.2使用else if处理多重条件 可将if 和 else组成的 else if 表达式来实现多重条件 fn main(){let number 6;if number % 4 0 {println!(number is divisible by 4);}else if number % 3 0 {println!(number is divisible by 3);}else if number % 2 0 {println!(number is divisible by 2);}else{println!(number is not divisible by 4,3,or 2);}}注意事项 使用过多的else if 表达式回事代码显得杂乱无章如果超过一个else if 表达式最好重构代码使用rust强大的分支结构match 5.3在let语句中使用if if是一个表达式可以在let语句的右侧使用它来将结果赋值给一个变量 fn mian(){let condition true;let number if condition { 5 } else {6};println!(The value of number is:{},number);// 5 }5.4使用循环重复执行 Rust有三种循环loop、while和for 1.使用loop重复执行代码 loop关键字告诉rust一遍又一遍执行一段代码知道你明确要求停止 fn main(){//这是一个死循环通过ctrlc终止循环loop{println!(again!);} }存在嵌套循环关键词break或continue可以和标签一起使用有利于业务的实现 fn main(){let mut count 0;counting_up: loop{println!(count {},count);let mut remaining 10;loop {println!(reamining {},remaining); if remaining 9 {break;}if count 2 {break counting_up;} remaining - 1;}count 1;}println!(End count {},count); }1.1从循环返回 loop的一个用例是重试可能会失败的操作有时可能会需要将操作的结果从循环中传递给其他的代码可以用停止循环的 break 表达式添加你想要的返回值 fn main(){let mut counter 0;let result loop {counter 1;if counter 10 {break counter * 2;}};println!(The value is {},result); // 20}2.while条件循环 fn main(){let mut number 3;while number ! 0{println!({},number);number - 1;}println!(LIFTOFF!!!); }3.使用for遍历集合 while也可以实现遍历集合但是容易出现下标越界问题所以一般建议不使用更加推荐for去实现业务逻辑 fn main() {let arr [10,20,30,40,50];for element in arr {println!(the value is: {},element);} }
http://www.w-s-a.com/news/55657/

相关文章:

  • 最快做网站的语言百度站长反馈
  • 简单网站设计价格手机网站技巧
  • 什么颜色做网站显的大气网站建设的含盖哪方面
  • 没网站怎么做二维码扫描连接济南做网站推广哪家好
  • 台州建设规划局网站搞外贸一般是干什么的
  • 怎么提高自己网站的知名度电子商务是建网站
  • 官方查企业的网站办公用品网站建设策划书
  • 微信网站搭建哪家好网站中转页
  • 阿里巴巴网站开发是谁长沙自助模板建站
  • 阿里云网站方案建设书网络公司运营是干啥的
  • 南通seo网站排名优化nginx wordpress rewrite
  • 网站做成软件做内部网站费用
  • 浙江企业网站建设网站域名有了 网站如何建设
  • 学编程哪个机构有权威德州做网站优化
  • 最火的网站开发语言福州网站建设服务商
  • 嘉兴网站制作哪里好asp网站源码免费版
  • 如何给网站配置域名百度网站统计添加网址
  • 搭建wap网站磁力引擎
  • 如何给公司网站做推广个人网站可以做社区吗
  • 网站建设为什么不给源代码大理如何做百度的网站
  • 网站代理违法吗网站备份流程
  • 免费域名查询网站wordpress wordfence
  • h5响应式网站模板制作巴南网站制作
  • 网站方案报价软文什么意思
  • 电子商城网站如何建设上海公司车牌价格
  • 丽江网站设计公司专业公司网站设计企业
  • iis怎么建设网站特色产品推广方案
  • 道路建设网站专题品牌网站建设特色大蝌蚪
  • 网站开发组合 所有组合如何做com的网站
  • 电商网站怎么做的Wordpress 报表的插件