C语言,并不是直接去实现库函数,而是提供了C语言的标准和库函数的约定(类似于开连锁店,你得满足我的要求才能开)
C语言常用的库函数有:
IO函数(即输入与输出函数)
字符串操作函数
内存操作函数
时间/日期函数
数学函数
其他库函数
注:使用库函数,必须包含对应的头文件。
库函数需要全部记住嘛?NO
需要学会查询工具的使用
https://cplusplus.com
http://en.cppreference.com
http://zh.cppreference.com
自定义函数和库函数一样,有函数名,返回值类型和函数参数
当实际参数传递给形式参数的时候,形式参数是实际参数的一份临时拷贝
所以形式参数的修改不会影响实参
实际参数(实参):
真实传给函数的参数,叫实参
实参可以是:常量,变量,表达式,函数等。
无论实参是何种类型的量,在进行函数调用时,他们都必须有确定的值,以便把这些值传给形参。
形式参数(形参):
形式参数是指函数名括号中的变量,应为形式参数只有在函数被调用的过中程才实例化(分配内存单元),所以叫形式参数,形式参数当函数调用完成之后就自动销毁了,因此形参只在函数中有效。
1.传值调用
函数的形参和实参分别占用不同内存块,对形参的修改不会影响实参。
2.传址调用
传址调用是把函数外部创建变量的内存地址传递给函数参数的一种调用方式。
这种传参方式可以让函数和函数外边的变量建立真正的联系,也可以是函
数内部可以直接操作函数外部的变量。
函数可以嵌套调用
#include
void new_line()
{
printf("hehe\n");
}
void three_line()
{
int i = 0;
for (i = 0; i < 3; i++)
{
new_line();
}
}
int main()
{
three_line();
return 0;
}
函数不能嵌套定义❌❌
#include
int test()
{
int a = 0;
int b = 0;
return a + b;
void fun()
{
printf("hehe\n");
}
}
int main()
{
return 0;
}
函数声明:
1.告诉编译器有一个函数叫什么,参数是什么,返回类型是什么,但是具体是不是存在函数声明决定不了。
2.函数声明一般出现在函数使用之前,需满足先声明后使用。
3.函数的声明一般要放在头文件中