MST

星途 面试题库

面试题:Go语言词法单元解析之标识符规则

在Go语言词法单元解析中,标识符是很重要的一部分。请阐述Go语言中标识符的命名规则,并举例说明哪些是合法标识符,哪些是非法标识符,以及非法的原因。
46.7万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试

命名规则

  1. 字符组成:标识符由字母(包括 Unicode 字母)、数字和下划线组成。
  2. 首字符限制:必须以字母或下划线开头,不能以数字开头。
  3. 不能是关键字:不能与Go语言的关键字(如ifelsefor等)同名。

合法标识符示例

  1. myVar:以字母开头,由字母和下划线组成。
  2. _underscore:以下划线开头,合法。
  3. 中文变量名:Go语言支持Unicode字母,所以中文作为标识符也是合法的(实际编程中不推荐大量使用非英文标识符)。

非法标识符示例及原因

  1. 123var:以数字开头,违反了必须以字母或下划线开头的规则。
  2. if:与Go语言关键字if同名,不允许。
  3. my-var:包含非法字符-,标识符只能由字母、数字和下划线组成。