函数就是将原来在main函数中的代码换一个位置,存放在另一个地方 //存代码块的东西就是函数
函数的作用:
-
为了减少重复代码块
-
代码模块清晰
注意点:
-
(1)函数的定义不能定义在函数的代码块里,必须在函数的外面定义函数
-
(2)函数定义时()里面的参数叫形参,(因为这个形参只是形式上的参数,\textcolor{Melon}{定义函数没有给形参开辟空间,形参只有在被调用时才会分配空间}
-
(3)反回小于等于4个字节就返回到寄存器,大于4个字节就返回到内存中。
-
传递过程是将值传过去,参数的传递,只能是单向传递(实参传给形参)
-
(4)实参传给形参,形参的值改变不会改变实参的值(值传递)
-
以后如果实参是传变量本身,只会是值传递,不会把变量本身的空间给传进去、
-
(5)函数的声明:
-
a、声明的作用就是告诉编译器这个东西在其他地方定义
-
b、函数的声明,把函数的定义形式放在调用之前
-
c、函数申明没有参数也可以。
void swap(int , int );(http:) void swap(int a,int b) { printf("b = %d",a); printf("a = %d",b); } // 此处运行无问题
-
函数调用之前先声明,可以先不定义。定义也是声明的一种。也可以先定义。
-
-
3、return 和 exit函数的区别
-
(1)return 结束当前所在的函数.
-
\textcolor{Goldenrod}{如果return在子函数中调用只会结束子函数,如果return在main函数中,会结束整个程序}
-
(2)exit 是一个库函数,用来结束整个程序。
-
不管exit在哪里调用,都会结束整个程序
-
exit(0);
-
-
4、防止头文件重复包含
-
两种方法:
-
方法 一 :
- \#ifndef 宏(宏的名字最好和文件相同,大写) - \#define 宏 - 声明函数的内容 - \#endif
-
方法二:
-
#progma once