GO语言注释://和/**/
程序入口:main函数
每个函数的 { } 的左半边括号必须与函数名同行
1)go语言以包作为管理单位
2)每个文件必须先声明包
3)可执行程序必须有且仅有一个main包(重要)
可执行文件必须包含 package main 和入口函数 main , main 包是 Go 语言程序的入口包,一个 Go 语言程序必须有且仅有一个 main 包,并且,一个 main 包中也必须有且仅有一个 main 函数。如果一个程序没有 main 包,那么编译时将会出错,无法生成可执行文件;
上述情况发生在一个项目包整体运行的情况下,不允许有两个main入口执行程序
但是如果是一个一个文件运行,存在两个文件有main入口依旧会运行
import:导入包 (注:导入包之后必须引用,不然会报错)
同理:变量声明了也必须引用
//1)go语言以包作为管理单位
//2)每个文件必须先声明包
//3)可执行程序必须有且仅有一个main包(重要)
package main
import "fmt"
//入口函数main函数
func main() { //左括号必须与函数名同行
//调用fmt库的Println函数 (打印函数,打印完会换行)
fmt.Println("hello go")
}
变量命名规则和c语言基本一致 (同一个范围内,不能同名)
数据类型:可以告诉编译器这个变量应该以多大的内存存储
初始化和赋值的区别
初始化:声明变量的同时完成赋值
赋值: 先声明,再赋值
赋值前必须前声明变量,但是自动推导类型( := )会先声明变量再赋值,所以不需要声明
package main import "fmt" //入口函数main函数 func main() { //左括号必须与函数名同行 //调用fmt库的Println函数 (打印函数,打印完会换行) fmt.Println("hello go") var a int //定义变量为int类型 a = 520 //给变量的赋值 fmt.Println("a = ", a) var b int = 10 //变量的初始化 //初始化和赋值的区别 /* 初始化:声明变量的同时完成赋值 赋值: 先声明,再赋值 */ fmt.Println("b = ", b) //自动推导类型,必须初始化,通过初始化的值确定类型 c := 30 //%T打印变量所属类型 fmt.Printf("c type is %T\n", c) //Printf不会自动换行,\n是换行符 //输出格式: //这里的a会直接放在最后面 fmt.Println("a = pw", a) //a放在%d的位置但是得需要使用Printf才能用(这个不会自动换行,需要使用\n) fmt.Printf("a = %dpw\n", a) //或者也可以这样 fmt.Println("a = ", a, "pw") }
cmd命令行 :
go build --> 生成可执行文件( .exe文件 )
go run --> 直接运行,不生成可执行文件
cls --> 清屏
cd --> 切换文件夹 (切换盘符,直接用盘符名+: 然后回车
在liteide中可以直接打开命令行: