课程名称: Go开发工程师全新版
课程章节: 5-2 转义符是什么?
课程讲师: bobby
课程内容:
在编程中有一些字符是打不出来的,比如换行,提示音,下一个制表位等等,于是程序语言的开发者就设计了转义序列(escape sequence)这种东西用来表达这些字符。
所谓转义,可以理解为 “采用某些方式暂时取消该字符本来的含义”,这里的 “某种方式” 指的就是在指定字符前添加反斜杠 \,以此来表示对该字符进行转义。
转义符核心是 “\”,转义符本质是 ASCII 码。
以下是常用转义符,还有很多
转义字符 | 意义 | ASCII码值(十进制) |
---|---|---|
\n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
\r | 回车(CR) ,将当前位置移到本行开头 | 013 |
\t | 水平制表(HT) (跳到下一个TAB位置) | 009 |
\ | 代表一个反斜线字符’’\’ | 092 |
\’ | 代表一个单引号(撇号)字符 | 039 |
" | 代表一个双引号字符 | 034 |
? | 代表一个问号 | 063 |
演示
package main
import "fmt"
func main() {
// 有个字符串需要在字符串中写 引号,
// 就需要使用转义字符对 引号进行转义
courseName := "go\"体系课\""
fmt.Println(courseName)
// 还可以试试其它转义字符,如:回车(\r) + 换行(\n)
courseName2 := "hello\r\ngo体系课"
fmt.Println(courseName2)
}
使用 `` 后可以不使用转义符
`` 和 “” 区别
-
“ ”:会解析字符串中的 转义符
-
``:不解析字符串中的 转义符
package main
import "fmt"
func main() {
// 有个字符串需要在字符串中写 引号
// 可以直接使用 `` 的语法
courseName := `go"体系课"` // 使用 `` 语法就不用使用 转义符 了
fmt.Println(courseName)
// 试试换行
courseName2 := `go
"体系课"`
fmt.Println(courseName2)
}
新的打印方式 fmt.Print()
fmt.Print() 和 fmt.Println() 区别:
- Println():打印时内置回车换行符
- Print():打印时没有内置回车换行符
package main
import "fmt"
func main() {
// fmt.Println 内置回车换行符
fmt.Println("hello")
fmt.Println("world")
// fmt.Print 没有内置回车换行符
fmt.Print("hello")
fmt.Print("world")
}
课程收获:
对转义符有一个清晰的认知