go语言的实战案例1|青训营

150 阅读2分钟

猜数字

  1. 生成随机数 image.png
    • 使用随机数种子时发现:rand.Seed()在1.20版本以后已经被弃用 image.png
    • 通过查看文档: image.png
  2. 去除输入的后缀。在猜数字案例中要处理换行
    • 发现视频中代码和仓库中源码用的方法不一样,一个是“TrimSuffix”,一个是“Trim”

      • TrimSuffix: 去除字符串的后缀
      • Trim:去除字符串的前缀和后缀
    • 按照视频中对 TrimSuffix函数的使用出现错误,直接执行:

      image.png

      fmt.Println("Invaild input. Please enter an integer value")
      
    • 按照仓库源码中对 Trim函数的使用,可以正确通过:

      input = strings.Trim(input, "\r\n")
      
    • 将TrimSuffix的参数改为:

      strings.TrimSuffix(input, "\r\n") // 正确执行
      
    • \r\n 是一个常见的转义序列,在计算机编程中表示回车(Carriage Return)和换行(Line Feed)的组合。这个转义序列通常用于表示文本文件中的行结束符。

      • \r:回车,ASCII码为13,表示将光标移动到当前行的行首。
      • \n:换行,ASCII码为10,表示将光标移动到下一行的行首。
    • 在不同的操作系统中,对于文本文件的行结束符有一些差异:

      • 在Windows系统中,通常使用回车和换行的组合 \r\n 来表示行结束。
      • 在Unix/Linux系统中,通常使用换行符 \n 来表示行结束。
      • 在Mac OS(早期版本)中,通常使用回车符 \r 来表示行结束。

      因此,当处理文本文件时,根据不同的操作系统可能需要注意行结束符的不同表示方式。在大多数现代编程语言中,处理文本文件时,通常会自动识别和处理不同的行结束符,因此开发者无需过多关注行结束符的表示方式。