一个例子
// 注释 行注释
/*
块注释
可以注释多行
注释中的内容不参与程序编译
*/
//文件所属的包 在go语言中 主函数所在的包一定是main
package main
import "fmt"
//导入系统包 标准输入输出包
//func 函数格式 main 函数名 主函数 程序有且只有一个主函数 无论程序中有多少函数 都会从main进入
//() 函数参数列表 {}函数体 代码体 程序体
func main(){
//fmt包 Println 打印并且换行 ""引起来的称为字符串
fmt.Println("hello world")
fmt.Println("传智播客")
}
go的包的名字定义的规则特点
1.必须有一个package main的包,这个被称作主程序包,是程序的开始,这样才能运行和编译。
2.一个目录下的同级文件归属一个包
3.包名可以与其目录不同名。
同一个文件夹中的程序调用和运行
一个名为main_test.go
package main
import "fmt"
func main(){
//fmt包 Println 打印并且换行 ""引起来的称为字符串
fmt.Println("hello world")
fmt.Println("传智播客")
test()
}
另一个名为son_test.go
package main
import "fmt"
func test(){
fmt.Println("zeh")
}
这两个文件建立后,需要注意的问题是在命令行的输入,在该文件夹路径下打开命令提示符窗口(可在文件路径搜索框输入cmd),然后输入以下代码。两个文件的位置可以互换,系统自动编译完成。
go run main_test.go son_test.go
不同文件夹下的调用
参考:https://blog.csdn.net/Love_XiaoQinEr/article/details/108207692
需要注意的地方
1.要想建立的**包能够被调用**,所自定义的包里面的函数首字母必须大写
2.文件夹名字和go文件中的package后的名字一样。
3.若使用自己定义的包,导入时使用相对路径
4.修改go环境的参数值:go env -w 要修改的内容
第一种方式、将GO111MODULE设置为off或者auto
go env -w GO111MODULE= off或者auto
修改包的搜索路径,否则不能搜索相对路径
主函数如下:
package main
import "fmt"
import "./son"
func main(){
fmt.Println("hello world")
fmt.Println("传智播客")
son.Test()
}
被调函数如下:
该go文件在一个son的文件中
package son
import "fmt"
func Test(){
fmt.Println("son_called")
}
第二种方式,将GO111MODULE设置为on
1.需要使用下面的命令初始化项目环境(这里名为test)
2.文件夹中就生成一个go.mod的文件,
3.主函数的导入的格式就是==test/son==的形式,和上一种方式不同的就是这里。
若想再次回到第一种方式,需要将go.mod文件删除。
go env -w GO111MODULE=on
go mod init test
主函数如下:
package main
import "fmt"
import "test/son"
func main(){
fmt.Println("hello world")
fmt.Println("传智播客")
son.Test()
}
版权声明:本文为weixin_43794311原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。