1). 文件名 & 关键字 & 标识符
1. 所有go源码都以 .go 结尾 2. 标识符以字母或下划线开头,大小写敏感 3. _ 是特殊标识符,用来忽略结果 4. 保留关键字
golang 关键字如下:
包访问控制规则:
示例1:写一个程序,对于给定一个数字n,求出所有两两相加等于n的组合。
代码如下:
package main import ( "fmt" ) func handle(n int){ for i := 0;i<=n;i++ { fmt.Printf("%d+%d=%d\n",i,n-i,n) // fmt.Printf() 是格式化输出 } } func main(){ handle(5) }
编译运行:
[[email protected] project]# go build -o bin/example01_plus go_dev/day02/example01_plus/main [[email protected] project]# bin/example01_plus 0+5=5 1+4=5 2+3=5 3+2=5 4+1=5 5+0=5 [[email protected] project]#
示例2:一个程序包含两个包 add 和 main,其中 add 包中有两个变量: Name 和 age。问 main 包中如何访问 Name 和 age?
# 目录结构如下: [[email protected] day02]# tree example02_call_var01 example02_call_var01 ├── add │ └── add.go └── main └── main.go 2 directories,2 files [[email protected] day02]# 示例代码如下: # 方式1: main.go 文件: package main import ( "go_dev/day02/example02_call_var01/add" "fmt" ) func main(){ fmt.Println("Name=",add.Name) fmt.Println("Age=",add.Age) } add.go 文件: package add var Name string = "hello world" // 声明变量,并对变量的值进行初始化(编译时);字符串如果只声明却没初始化,则该字符串变量的值为 空 var Age int = 10 // 字符串如果只声明却没初始化,则该字符串变量的值为 0 # 编译之后的运行结果如下: [[email protected] bin]# ./example0201 Name= hello world Age= 10 [[email protected] bin]# # 方式2: main.go 文件: package main import ( "go_dev/day02/example02_call_var02/add" "fmt" ) func main(){ add.Var_test() // 先调用 该函数来对变量 Name 和 Age 进行初始化 fmt.Println("Name=",add.Age) } add.go 文件: package add var Name string var Age int func Var_test(){ // 首字母要大写 Name = "hello world" // go 是编译型语言,所有的执行语句都要放到函数里面(赋值/初始化也是执行语句) Age = 10 } # 错误示例: main.go 文件内容: package main import ( "go_dev/day02/example02_call_var03_err/add" "fmt" ) function main(){ fmt.Println("Name=",add.Age) } add.go 文件内容: package add var Name string var Age int Name = "hello world" // go 是编译型语言,所有的执行语句都要放到函数中作为入口 Age = 10
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。