前言:
文章内容可能需要C语言的基础知识,如果不懂C语言请自行学习, 编程不懂C语言跟咸鱼有什么区别 ,推荐一个不错的C语言课程Link: 如果你觉得这是一条广告,请自行忽略, talk is cheap show me the code!1.为啥需要函数:
因为,便于代码阅读,模块化编程的鼻祖,就是函数.用一个大括号把一段逻辑代码封装起来,然后,告诉别人,这是干嘛的就行了,用的人不需要知道里面是怎么实现的.
2.在C语言中函数只能返回一个值
返回值类型 函数名称(形参列表){ 逻辑语句;}复制代码
3.在Go语言中函数可以返回多个值
func 函数名称(形参列表) (返回值列表){ 逻辑语句;}复制代码
func getValue()(int) { return 666}func calculate()(int, int){ return 10, 20}复制代码
输出函数
- 在C语言中, 我们使用printf来输出内容
- 在Go语言中也可以使用printf输出内容
- 但是在Go语言中还有其它更方便的函数, 也可以输出内容
2.1第一种输出方式:fmt.Printf("格式化字符串", 数据列表)特点: 不会自动换行, 但是可以自定义输出格式2.2第二种输出方式fmt.Println(数据列表)特点: 会自动换行, 但是不能使用占位符%d%c%s复制代码
num, value := 10, 20//fmt.Printf("num = %d, value = %d\n", num, value) //fmt.Printf("------")fmt.Println("num = ", num, "value = ",value) fmt.Println("----")复制代码
输入函数
- 在C语言中, 我们使用scanf来接收输入的内容
- Go语言中也可以使用scanf来接收输入的内容
- 但是在Go语言中还有其它更方便的函数, 也可以接收输入的内容
第二种方式 fmt.Scan(地址列表) 特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB和回车, 相当于C语言的scanf第一种方式: fmt.Scanf(格式化字符串, 地址列表) 特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB, 但是不会忽略回车第三种方式 fmt.Scanln(地址列表)特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB, 但是不会忽略回车复制代码
感觉没啥用!!!实际开发中就只要会在控制台输出东西,调试代码就行!!!!!