From 74572247857ce7dad83eb9e5935013a085cf0ddb Mon Sep 17 00:00:00 2001 From: Yifu Duan Date: Sun, 4 Sep 2022 18:45:12 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8B=B1=E6=96=87?= =?UTF-8?q?=E9=80=97=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/basic/base-type/statement-expression.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/basic/base-type/statement-expression.md b/src/basic/base-type/statement-expression.md index 20bdfe9b..291868fa 100644 --- a/src/basic/base-type/statement-expression.md +++ b/src/basic/base-type/statement-expression.md @@ -12,7 +12,7 @@ fn add_with_extra(x: i32, y: i32) -> i32 { 语句会执行一些操作但是不会返回一个值,而表达式会在求值后返回一个值,因此在上述函数体的三行代码中,前两行是语句,最后一行是表达式。 -对于 Rust 语言而言,**这种基于语句和表达式的方式是非常重要的,你需要能明确的区分这两个概念**, 但是对于很多其它语言而言,这两个往往无需区分。基于表达式是函数式语言的重要特征,**表达式总要返回值**。 +对于 Rust 语言而言,**这种基于语句和表达式的方式是非常重要的,你需要能明确的区分这两个概念**,但是对于很多其它语言而言,这两个往往无需区分。基于表达式是函数式语言的重要特征,**表达式总要返回值**。 其实,在此之前,我们已经多次使用过语句和表达式。 From faafeceb300afd47876ff2a472698fcfbcba5b5b Mon Sep 17 00:00:00 2001 From: Yifu Duan Date: Sun, 4 Sep 2022 18:47:26 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=AD=A3=E6=96=87?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E8=8B=B1=E6=96=87=E6=A0=87=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/basic/compound-type/string-slice.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/basic/compound-type/string-slice.md b/src/basic/compound-type/string-slice.md index c49bcce5..f54b46f3 100644 --- a/src/basic/compound-type/string-slice.md +++ b/src/basic/compound-type/string-slice.md @@ -64,7 +64,7 @@ let slice = &s[0..2]; let slice = &s[..2]; ``` -同样的,如果你的切片想要包含 `String` 的最后一个字节,则可以这样使用: +同样的,如果你的切片想要包含 `String` 的最后一个字节,则可以这样使用: ```rust let s = String::from("hello"); @@ -86,7 +86,7 @@ let slice = &s[0..len]; let slice = &s[..]; ``` -> 在对字符串使用切片语法时需要格外小心,切片的索引必须落在字符之间的边界位置,也就是 UTF-8 字符的边界,例如中文在 UTF-8 中占用三个字节,下面的代码就会崩溃: +> 在对字符串使用切片语法时需要格外小心,切片的索引必须落在字符之间的边界位置,也就是 UTF-8 字符的边界,例如中文在 UTF-8 中占用三个字节,下面的代码就会崩溃: > > ```rust > let s = "中国人"; @@ -204,7 +204,7 @@ fn say_hello(s: &str) { ## 字符串索引 -在其它语言中,使用索引的方式访问字符串的某个字符或者子串是很正常的行为,但是在 Rust 中就会报错: +在其它语言中,使用索引的方式访问字符串的某个字符或者子串是很正常的行为,但是在 Rust 中就会报错: ```rust let s1 = String::from("hello"); @@ -607,7 +607,7 @@ fn main() { } ``` -当然,在某些情况下,可能你会希望保持字符串的原样,不要转义: +当然,在某些情况下,可能你会希望保持字符串的原样,不要转义: ```rust fn main() { println!("{}", "hello \\x52\\x75\\x73\\x74"); From dc9d5ca870157ea257f4db54fa180f729fdf58fc Mon Sep 17 00:00:00 2001 From: Yifu Duan Date: Sun, 4 Sep 2022 19:36:53 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=AD=A3=E6=96=87?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E8=8B=B1=E6=96=87=E5=86=92=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/basic/compound-type/string-slice.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/basic/compound-type/string-slice.md b/src/basic/compound-type/string-slice.md index f54b46f3..59327bf6 100644 --- a/src/basic/compound-type/string-slice.md +++ b/src/basic/compound-type/string-slice.md @@ -675,7 +675,7 @@ for b in "中国人".bytes() { 想要准确的从 UTF-8 字符串中获取子串是较为复杂的事情,例如想要从 `holla中国人नमस्ते` 这种变长的字符串中取出某一个子串,使用标准库你是做不到的。 你需要在 `crates.io` 上搜索 `utf8` 来寻找想要的功能。 -可以考虑尝试下这个库:[utf8_slice](https://crates.io/crates/utf8_slice)。 +可以考虑尝试下这个库:[utf8_slice](https://crates.io/crates/utf8_slice)。 ## 字符串深度剖析