Go第一个程序

go 复制代码
package main

import "fmt"

func main() {
	str := "hello go"
	fmt.Println(str)
}

上述很简单,如何使用os包获取命令行参数呢?

go 复制代码
package main

import (
	"fmt"
	"os"
)

func main() {
	fmt.Println(os.Args)
	str := "hello go with os"
	fmt.Println(str)
}

分析上述的代码:

包的定义package main就用小写单词命名的。

main包一个go程序只允许有一个。

入口函数func main(){}

导入包用import "fmt"

不用显示定义str类型,直接用:=即可。

:=只能在局部作用域内,而不能在全局,全局用var

面试题:

go的类型推断的好处?
可以提升代码的灵活性,重构也更容易,维护也没有负担。而且在编译期完成,不会对运行效率产生任何影响。
Go的程序执行入口是main函数吗?
并不是,因为程序启动要初始化,初始化内存,初始化栈,初始化调度器,这些都是go汇编完成的,而main函数是go的第一个执行的goroutine。

go程序可以任意导入包。

相关推荐
轩情吖11 分钟前
二叉树-堆(补充)
c语言·数据结构·c++·后端·二叉树··排序
powershell 与 api17 分钟前
C#,shell32 + 调用控制面板项(.Cpl)实现“新建快捷方式对话框”(全网首发)
开发语言·windows·c#·.net
SomeB1oody22 分钟前
【Rust自学】19.2. 高级trait:关联类型、默认泛型参数和运算符重载、完全限定语法、supertrait和newtype
开发语言·后端·rust
山茶花开时。1 小时前
[SAP ABAP] 静态断点的使用
开发语言·sap·abap
纠结哥_Shrek1 小时前
Java 有很多常用的库
java·开发语言
加油,旭杏2 小时前
【go语言】函数
开发语言·后端·golang
南玖yy3 小时前
C语言:结构体
c语言·开发语言
2501_903238653 小时前
自定义登录页面的Spring Security实践
java·后端·spring·个人开发
〖是♂我〗4 小时前
自定义数据集 使用scikit-learn中svm的包实现svm分类
开发语言·python
南玖yy5 小时前
C语言:整型提升
c语言·开发语言