函数知识点总结
来源:互联网 发布:淘宝不属于广告商品 编辑:程序博客网 时间:2024/04/30 13:59
函数的基本概念:
定义函数首先要有三个确定:
1:确定函数名称。(根据函数的功能确定)
定义名称的规范:有26个字母 下划线 数字组成,但是不能以数字开头
2:确定函数的形参列表(形参类型 形参名称)
形参个数和是否需要形参是根据用户需要来定义的
3:确定返回值类型,根据函数执行完是否需要返回值给函数调用者来确定
int getMax(int v1, int v2)
{
int max = v1 > v2 ? v1 : v2;
return max;
}
int main()
{
int a = 10;
int b = 20;
int c = getMax(a,b);
printf("c = %d\n",c);
return 0;
}
函数的注意点:
1:返回值类型必须和return后面的类型相同
2:return单独存在的时候,后面不可以写任何语句,因为执行不到
3:函数可以没有返回值,当return后面没有任何返回值的时候,返回值类型就写void,代表着没有返回值
当函数没有返回值的时候,函数后面的return可以省略不写
4:c语言中函数可以不写返回值类型,但是如果没有写返回值类型,系统会默认返回值类型为int
同时,写了返回值类型也可以没有返回值
5:函数不能嵌套定义
6:函数不能重复定义
函数的声明和实现
只要在使用之前告诉编译器函数的三要素就可以
声明函数的目的,是告诉编译器函数的名称形参以及返回值
int getMin(int v1, int v2);
函数的声明可以省略形参名称
int getMin(int, int);
函数的声明可以相同
int getMin(int, int);
函数中的递归算法
递归的含义就是函数自身抵用自身
能用循环实现的功能基本上都能用递归实现
缺点:性能差
注意:递归一定要有一个明确的结束条件,否则就会造成死循环
void getNumber()
{
printf("abc\n");
getNumber();
}
上边的函数的递归就是一个死循环,切记一定要有一个明确的结束条件
#include <stdio.h>
int myPow2(int base, int n);
int main(int argc, const char * argv[])
{
int result = myPow2(2, 3);
printf("result = %d\n", result);
return 0;
}
int myPow2(int base, int n)
{
if (n <= 0) {
return 1;
}
return myPow2(base, n - 1) * base;
}
- 函数知识点总结
- QT:函数知识点总结
- R技术、函数知识点总结
- Python知识点总结1--函数
- Oracle知识点总结—单行函数
- 对匿名函数的一些知识点总结!
- java知识点总结之五构造函数
- 标准IO函数以及基本知识点总结
- 实变函数论知识点总结
- js基本知识点总结-----js函数基础
- js基本知识点总结-----js字符串函数
- 知识点总结:
- 知识点总结
- 知识点总结
- 知识点总结
- 知识点总结
- 知识点总结
- 知识点总结
- 转 -A Distributed Systems Reading List
- javaScript(6)---流程控制语句
- 理解JavaScript中的事件处理
- 3S在土地利用和覆盖变化研究中的主要技术方法
- javaScript(7)---函数
- 函数知识点总结
- javaScript(8)---对象和数组
- memcached简介及java使用方法
- java设计模式--单列模式
- MySQL忘记密码解决方案
- rtems 的消息与消息队列管理器
- IOS使用sskeychain调用keychain保存密码
- 灵活高效PDF转Word工具
- 如何恢复优盘格式化一半的数据呢