这次一定会一直更新
其实golang和python有点像,先给出一个最简单的go程序吧,我们熟悉的Hello World,以下有一些基本的语法用法
package main
//注意主函数所在的包一定是 main
//主目录下的文件一定要使用package main
import "fmt"// 导入系统包 标准输入输出包
//func 函数格式 main 函数名 程序有且只有一个主函数
func main(){
fmt.Println("Hello world12")//用ln是带换行的
fmt.Print()
var sun int = 50 //设置变量 : var 变量名 数据类型
var sun1 int //即使不赋值,也会开辟一份空间存储
a := 10 //自动推导类型,简便的变量初始化方法
b := 123.123 //float64类型
a,b,c := 12,20,30 //多重赋值
_,_,c,d := 120,30,20,12 //_ 表示匿名变量,不接受数据,这里只对c,d 赋值 120,30
fmt.Println()
//利用多重赋值来交换数据
a,b = b,a
}
golang 继承了很多c的语法,比如格式化输出格式
func main(){
a := 10
b := 20.3456789
fmt.Printf("%d\n",a)//十进制输出
fmt.Printf("%b\n",a)//二进制输出
fmt.Printf("%o\n",a)//八进制输出
fmt.Printf("%x\n",a)//十六进制输出
fmt.Printf("%f\n",b)// %f默认保留6位,因为浮点数据不是精准数据, 6位是有效的
fmt.Printf(".5f\n",b) //保留5位小数
fmt.Printf("%T",b) //输出b的数据类型
fmt.Printf("%p",&b) //输出b的内存地址 (地址无符号十六进制形式)
var virtual bool = true
fmt.Printf("%t",virtual)//输出结果为 true ,%t就是以true或者false 输出布尔值
//常量
const MAX = 100
const MIN float64 = 0.00
fmt.Printf("%T\n",MAX)
//常量地址是不可以访问的
}
注意上面使用输出格式的时候是用的Printf
在golang中 unit8 与 byte为同义词
字符类型
\n :换行
\0 :用于字符串的结束标志
\t : 对应的AscII码为9, 水平制表符,一次跳八个空格
在go语言中,一个汉字占3个字节,是为了和linux进行统一处理
用 len()函数可以查看字符串长度,但不计入'\0'。
Ex:st := "hello"
fmt.Println(len(st))
func main(