Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
yuanqian52
Summer_OS
提交
a573e445
S
Summer_OS
项目概览
yuanqian52
/
Summer_OS
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Summer_OS
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a573e445
编写于
7月 19, 2021
作者:
yuanqian52
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
更新CHANGELOG
已删除ass.ass
上级
7520d82c
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
193 addition
and
18 deletion
+193
-18
CHANGELOG
CHANGELOG
+193
-0
ass.ass
ass.ass
+0
-18
未找到文件。
CHANGELOG
浏览文件 @
a573e445
2021.7.7 create the project
chapter 1
///关于变量
fn main()
{
let x = 13;//由rust本身进行推断
let mut x = 13;//当使用 mut 为关键字时,变量x为可变的
println!("{}",x);
let x:f64 = 3.14159;//给出声明和定义
println!("{}");
let x;//很少使用
x = 0;
println("{}",x);
}
///关于基本类型:
bool型;true false;
无符号整型:u8~u128;
有符号整型:i8~i128;
指针大小的整型:usize isize;
浮点数:f32 f64;
元组:t = (value,value,...) 取值时t.0 t.1 ...;
数组:相同类型数据元素的固定长度集合,[T,N]中,
T是元素的类型,
N是编译时已知的固定长度
str:
fn main()
{
let a1 = 12; //默认i32
let a2 = 12u8; //
let b1 = 4.3; //默认f64
let b2 = 4.3f32; //
let br = true; //
let t = (13,false); //元组
let sentence = "hello world!"; //
let nums: [i32;3] = [1,2,3];//println!("{:?},nums); ->[1,2,3]
//println!("{}",nums[1]); -> 2
fn zhuanhuan() ///关键字 as 起作用
{
let a = 13u8;
let b = 7u32;
let c = a as u32 + b;
println!("{}", c);
let t = true;
println!("{}", t as u8);
}
}
///关于常量
起名遵循全大写蛇形命名法(SCREAMING_SNAKE_CASE)
{
const PI: f32 = 3.14159;
fn main()
{
println!("make an apple {} from scratch.",PI);
}
}
///关于函数(类似于c语言)
//函数名遵循蛇形命名法(snake_case)
{
fn add(x:i32,y:i32) -> i32
{
return x+y;
}
fn main()
{
println!("{}",add(42,13));
}
}
//通过元组来实现多个返回值
{
fn swap(x: i32, y: i32) -> (i32, i32)
{
return (y, x);
}
fn main()
{
let result = swap(123, 321);
println!("{} {}", result.0, result.1);
let (a, b) = swap(result.0, result.1);
println!("{} {}", a, b);
}
}
//通过返回空的元组来返回空值,即()
{
fn make_nothing1() -> ()
{
return ();
}
fn make_nothing2()
{
}
fn main()
{
let a = make_nothing1();
let b = make_nothing2();
println!("The value of a: {:?}", a);
println!("The value of b: {:?}", b);
}
//不论函数中是否规定返回值,最终输出结果都是()
}
chapter 2 分支控制
///if/else if/else
与c语言相区别,判断条件不需要括号
if x < 42{...}else if x == 42{...}
///循环
//break和loop
{
fn main()
{
let mut x = 0;
loop
{
x += 1;
if x == 42
{
break;
}
}
println!("{}",x);
}
}
//while:向循环添加条件
{
fn main()
{
let mut x = 0;
while x != 42;
{
x += 1;
}
}
}
***//for:
//.. 运算符创建一个可以生成包含起始数字、但不包含末尾数字的数字序列的迭代器。
//..=运算符创建一个可以生成包含起始数字、且包含末尾数字的数字序列的迭代器。
{
fn main()
{
for x in 0..5
{
println!("{}",x); -> 0 1 2 3 4
}
for x in 0..=5
{
println!("{}",x); -> 0 1 2 3 4 5
}
}
}
//match:类比于c语言中的switch
{
fn main()
{
let x = 42;
match x
{
//匹配值
0 => {println!("found zero");}
1 | 2 => {println!("found 1 or 2");}
//匹配迭代器
3..=9 => {println!("found 3 to 9");}
//将匹配数值绑定到变量
matched_num @ 10..=100 => {println!(found {} number between 10 to 100!",matched_num);}
//默认匹配,在没有处理所有情况时,必须存在该匹配
_ => {println!("found something else!")}
}
}
//结果为 -> found 42 number between 10 to 100!
}
//从循环中返回值
loop可以被中断以返回一个值。
{
}
ass.ass
已删除
100644 → 0
浏览文件 @
7520d82c
butt
爱仕达我的啊我dA
a da s
挨打的
sgr s
asdasdasdasd
asdasdasdasdw
r
r
2
xdsfdf
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录