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

北京网站建设方案外包医疗器械为什么做网站

北京网站建设方案外包,医疗器械为什么做网站,网站导航优化,wordpress php 文件【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟#xff0c;李建英)【摘要 书评 试读】- 京东图书 (jd.com) https://blog.csdn.net/brucexia/category_12779443.html 前面已经学习了变量和常量#xff0c;本节开始对它们进行操作#xff0c…【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟李建英)【摘要 书评 试读】- 京东图书 (jd.com) https://blog.csdn.net/brucexia/category_12779443.html 前面已经学习了变量和常量本节开始对它们进行操作这就要用到Rust的操作符Operator。操作符通常是由一个或多个特殊的符号组成的也有非特殊符号的操作符如as比如、−、*、/、%、、*等。每个操作符都代表一种动作或操作这种动作作用于操作数之上。简单来说就是对操作数执行某种操作然后返回操作后得到的结果。比如加法操作3 2这里的是操作符加号两边的3和2是操作数加法符号的作用是对操作数3加上操作数2得到计算结果5并返回5。 有些语言很多操作符都是关键字比如add、equals等。Rust的操作符主要是由符号组成的比如、−等。这些符号不在字母表中但是在所有键盘上都可以找到。这个特点使得Rust程序更简洁也更国际化。运算符也称操作符。运算符是Rust语言的基础所以非常重要。 4.1.1  赋值运算符 赋值运算符的功能是将一个值赋给一个变量。比如 a 5; 以上代码将整数5赋给变量a。 运算符左边的部分叫作左值lvalueleft value右边的部分叫作右值rvalueright value。左值必须是一个变量而右值可以是一个常量、一个变量、一个运算的结果或者是前面几项的任意组合。 有必要强调赋值运算符永远是将右边的值赋给左边不会反过来。比如 a b; 以上代码将变量b的值赋给变量a不论赋值前a存储的是什么值这行代码执行后a的值就和b的值一样了。但要注意我们只是将b的值赋给a以后如果b的值改变了并不会影响a的值。下面来看实例。 【例4.1】  赋值运算符的使用 在命令行下用命令cargo new myrust新建一个Rust项目项目名是myrust。 打开VS Code再打开文件夹myrust然后在VS Code中打开src下的main.rs输入如下    代码 fn main() {let mut a:i32;let mut b:i32;            //此时a、b的值未知a 10;                     // a:10b未知b 4;                      // a:10b:4a b;                      // a:4b:4b 7;                      // a:4b:7println!({},{},a,b);} 以上代码的结果是a的值为4b的值为7。最后一行中b的值被改变并不会影响a虽然在此之前我们声明了a b;从右到左规则right-to-left rule。 运行结果如下 4,7 4.1.2  数学运算符 Rust语言支持5种数学运算符分别为加、减−、乘*、除/、取模%括号里的符号就是数学运算符号。加减乘除运算想必大家都很了解它们和一般的数学运算符没有区别。 唯一你可能不太熟悉的是用百分号%表示的取模运算Module。取模运算是取两个整数相除的余数。例如如果我们写a 11 % 3;变量a的值将会为2因为2是11除以3的余数。比如 fn main() {let mut a:i32;let mut b:i32;let mut c:i32; a 11 % 3;                // 取模运算得a为2b 4a;                    //加法运算得b为6c (ab)/2;                //除法运算得c为4       println!({},{},{},a,b,c);} 输出结果 2,6,4 4.1.3  组合运算符 Rust以书写简练著称其一大特色就是这些组合运算符、−、*、/及其他这些运算符使得只用一个基本运算符就可以改写变量的值 value increase; 等同于 value value increase; 比如 a − 5; 等同于 a a − 5;。a / b; 等同于 a a / b;。price * units 1; 等同于price price * (units 1);。 其他运算符以此类推。下面来看一个组合运算符的例子代码如下 fn main() {let mut a:i32;let mut b:i32;let mut c:i32; a 11 % 3;         // a:2b 4a;            // b:6c (ab)/2;  //c:3  ac;  b*a;c/2;   println!({},{},{},a,b,c);} 结果输出 6,6,4 值得庆幸的是Rust 语言不支持自增运算符和自减运算符--因此本节绝对不会出现类似于ai这样让人血压升高的语句。其实编程语言由于是给人用的一定要考虑到人的局限性就是面对复杂事物容易出错所以编程语言一定要简单明了Rust去掉了和--相对于C语言而言绝对是个进步可以从源头上尽可能防止人类出错。 4.1.4  关系运算符 我们用关系运算符来比较两个表达式关系运算的结果是一个布尔值即它的值只能是true或false。例如我们想通过比较两个表达式来看它们是否相等或一个值是否比另一个值大。表4-1所示为Rust的关系运算符。 示例代码如下 fn main() {let mut a:bool;let mut b:bool;let mut c:bool;a(7!5);b (10099);c(66);println!({},{},{},a,b,c);} 运行结果true,false,true。 除使用数字常量外我们也可以使用任何有效表达式包括变量。比如下列代码 fn main() {let mut a:i32;let mut b:i32;let mut c:i32;a2;b3;c6;println!({},{},{},(a 5),(a*b c),(b4 a*c));} 输出结果false,true,false。(a*b c)返回true是因为它实际是(2*3 6)(b4 a*c)返回false因为它实际是(34 2*6)。 值得注意的是运算符单个等号不同于运算符两个等号前者是赋值运算符将等号右边的表达式值赋给左边的变量后者是一个判断等于的关系运算符用来判断运算符两边的表达式是否相等。 4.1.5  逻辑运算符 运算符!等同于boolean运算NOT取非它只有一个操作数Operand写在它的右边。它做的唯一工作就是取该操作数的反面值也就是说如果操作数值为真true那么运算后值变为假false如果操作数值为假false则运算结果为真true。它就好像是取与操作数相反的值。例如 !(5 5)返回false因为它右边的表达式5 5为真true。!(6 4)返回true因为6 4为假false。!true返回假false。!false返回真true。 大家如果不信可以用下列代码直接输出看看结果 println!({},{},{},{},!(5 5),!(6 4),!true,!false); 逻辑运算符和||用来计算两个表达式而获得一个结果值。它们分别对应逻辑运算中的与运算AND和或运算OR。它们的运算结果取决于两个操作数的关系如表4-2所示。 例如 ( (5 5) (3 6) )返回false ( true false )。( (5 5) || (3 6))返回true ( true || false )。 大家如果不信可以用下列代码直接输出看看结果 println!({},{},( (5 5) (3 6) ) ,( (5 5) || (3 6))); 4.1.6  位运算符 位运算符以比特位改写变量存储的数值也就是改写变量值的二进制表示。Rust的位运算符如表4-3所示。 下面的范例演示上面提到的所有位运算符。 fn main() {let a:i32 2;     // 二进制表示为 0 0 0 0 0 0 1 0let b:i32 3;     // 二进制表示为 0 0 0 0 0 0 1 1let mut result:i32;result a b;println!((a b) {} ,result);result a | b;println!((a | b) {} ,result) ;result a ^ b;println!((a ^ b) {} ,result);result !b;println!((!b) {} ,result);result a b;println!((a b) {},result);result a b;println!((a b) {},result);} 输出结果如下 (a b) 2(a | b) 3(a ^ b) 1(!b) -4(a b) 16(a b) 0 4.1.7  变量类型转换运算符 变量类型转换运算符可以将一种类型的数据转换为另一种类型的数据。在Rust中可以使用关键字as进行类型转换as 运算符有点像C中的强制类型转换区别在于它只能用于原始类型i32、i64、f32、f64、u8、u32、char等类型并且它是安全的。注意不同的数值类型是不能进行隐式转换的。比如 let b: i64 iNum;  //iNum是一个i32类型的变量 会出现编译错误提示无法进行类型转换。这时可以使用as 进行转换比如 fn main() {let mut iNum:i32;     let mut b:i64;    iNum100;b iNum as i64;print!({},b);} 输出结果100。 为什么as是安全的尝试以下代码 b iNum as char; 编译器报错 error[E0604]: only u8 can be cast as char, not i32 可见在不相关的类型之间Rust 会拒绝转换这样避免了运行时错误。 4.1.8  运算符的优先级 当多个操作数组成复杂的表达式时我们可能会疑惑哪个运算先被计算哪个后被计算。例如以下表达式 a 5 7 % 2 我们可以怀疑它实际上表示a 5 (7 % 2) 结果为6还是 a (5 7) % 2 结果为0? 正确答案为第一个结果为6。每一个运算符都有一个固定的优先级不仅是数学运算符我们可能在学习数学的时候已经很了解它们的优先顺序了所有在Rust中出现的运算符都有优先级。从最高级到最低级运算符的优先级按表4-4排列。 以下是简单的示例 fn main() {//二元计算操作println!(1 2 {}, 1u32 2);println!(1 - 2 {}, 1i32 - 2);//逻辑操作println!(true AND false is {}, true false);println!(true OR false is {}, true || false);println!(NOT true is {}, !true);//位运算操作println!(0011 AND 0101 is {:04b}, 0b0011u32 0b0101);println!(0011 OR 0101 is {:04b}, 0b0011u32 | 0b0101);println!(0011 XOR 0101 is {:04b}, 0b0011u32 ^ 0b0101);println!(1 5 is {}, 1u32 5);println!(0x80 2 is 0x{:x}, 0x80u32 2);} 运行结果如下 1 2 31 - 2 -1true AND false is falsetrue OR false is trueNOT true is false0011 AND 0101 is 00010011 OR 0101 is 01110011 XOR 0101 is 01101 5 is 320x80 2 is 0x20 所有这些运算符的优先级顺序可以通过使用一对圆括号“”来控制而且更易读懂示例如下 a 5 7 % 2; 根据我们想要实现的计算不同可以写成 a 5 (7 % 2); 效果和a 5 7 % 2;一样因为%的优先级比高所以加不加括号没什么区别。如果要先计算57则可以这样 a (5 7) % 2; 此时最终计算结果就不同了。所以如果想写一个复杂的表达式而不敢肯定各个运算的执行顺序那么就加上括号。这样可以使代码更易读懂。
http://www.w-s-a.com/news/978257/

相关文章:

  • 网站管理助手3.0做淘宝网站用什么软件做
  • 贵阳做网站的公司wordpress趣味插件
  • 自己设置免费网站设计平台南京哪里有做公司网站的
  • 建设公司内网网站的意义自助建站网站的宣传手册
  • 手机建设中网站建立个人网站服务器
  • 网站开发工程师岗位概要网站怎么制作教程
  • 城乡建设主管部门官方网站公司简介模板ppt范文
  • 网站认证必须做么cc0图片素材网站
  • net域名 著名网站国外设计案例网站
  • 淘宝客网站哪里可以做app地推网
  • 宜昌建设厅网站中国最新时事新闻
  • 微网站怎么开发wordpress 发表评论
  • 山东网站建设是什么一页网站首页图如何做
  • 游戏开发与网站开发哪个难万网影
  • 做网站编程语言建筑施工特种证书查询
  • 找人做网站内容自己编辑吗修改wordpress登陆界面
  • 登陆建设银行wap网站湖南网站建设磐石网络答疑
  • 58网站怎么做浏览度才高论坛网站怎么做排名
  • wordpress 手机网站支付京东网站建设的经费预算
  • 自己怎么样做游戏网站做海外贸易网站
  • 建立什么样的网站好制作网页网站代码
  • 岳麓区专业的建设网站公司尚一网常德论坛
  • 电商网站建设实训报告360站长平台链接提交
  • 个性化网站建设公司个人网站备案类型
  • 腾讯建站模板上海网站开发有限公司
  • 网站和小程序的区别请问做网站怎么赚钱
  • 网站logo设计免费版在线网站开发建设准备工作
  • wordpress多站点 主题南京做网站好的公司
  • 广州 门户seo到底是做什么的
  • 可以登录国外网站吗如何用家用电脑做网站