玩转Go语言之函数初体验

208 阅读2分钟
前言:
 文章内容可能需要C语言的基础知识,如果不懂C语言请自行学习,编程不懂C语言跟咸鱼有什么区别,推荐一个不错的C语言课程Link:www.it666.com/my/course/2 如果你觉得这是一条广告,请自行忽略,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}

输出函数

  1. 在C语言中, 我们使用printf来输出内容
  2. 在Go语言中也可以使用printf输出内容
  3. 但是在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("----")

输入函数

  1. 在C语言中, 我们使用scanf来接收输入的内容
  2. Go语言中也可以使用scanf来接收输入的内容
  3. 但是在Go语言中还有其它更方便的函数, 也可以接收输入的内容

第二种方式
	fmt.Scan(地址列表)
	特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB和回车, 相当于C语言的scanf
第一种方式:
	fmt.Scanf(格式化字符串, 地址列表)
	特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB, 但是不会忽略回车
第三种方式
	fmt.Scanln(地址列表)
特点: 如果接收的不是字符串类型(%c), 会忽略空格和TAB, 但是不会忽略回车

感觉没啥用!!!实际开发中就只要会在控制台输出东西,调试代码就行!!!!!