黑马程序员------C语言基础 函数
来源:互联网 发布:泛雅网络平台登录 编辑:程序博客网 时间:2024/05/13 03:34
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
函数
函数是复用的一种机制(官方)
函数就是一段代码的打包
语法:
返回值类型 函数名 ( 参数类型 参数名, 参数类型 参数名, ... ) {
函数体, 就是打包的代码
}
在 C 语言中, 函数不允许定义在函数内部
func(); 调用 func 函数, 就是执行名字为 func 函数中的代码
void getSum1(int num1, int num2) {
int res = num1 + num2;
printf("%d + %d = %d\n", num1, num2, res);
}
这个函数限制了输出结果的环境
如果希望在别的地方也可以显示结果, 那么就需要函数得到计算的结果, 有专门的输入函数进行输出
int getSum(int num1, int num2) {
int res = num1 + num2;
return res; // 利用 return 语句返回 res 的结果
}
#include <stdio.h>int main(int argc, const char * argv[]) { int n = 111; int m = 222; int res = getSum(n, m); printf("%d\n", res); return 0;}
2.返回值类型的说明
1> 函数前面写的 int 表示函数执行完成以后会得到一个 int 类型的数据
在函数中, 需要使用 "return 数据" 结束函数
int func2() {
// return 123;
return 'a';
}
在 return 后面写的东西, 是什么表示函数执行完成后会得到什么结果
2> 函数前面写void 的表示没有返回值
void func1() {}int main(int argc, const char * argv[]) { // int num = func1(); // 错误, 函数前面写 void 表示函数执行完没有结果, 即没有返回值 int num = func2(); printf("%d\n", num); return 0;}
3.函数的声明
所谓的函数声明, 就是在函数调用以前将函数的格式写出开
以便告诉编译器后面要执行该函数
函数声明
void printSum(int num1, int num2); // 函数头, 函数声明
在标准 C 中, 常常使用下列步骤处理函数头
>1 去掉所有的 参数 的名字
void printSum(int, int);
> 2 在函数的前面加上 extern (略)
extern void printSum(int, int);
extern 表示该函数不是在当前文件中定义的
implicity 隐式的
explicity 显式的
4 多文件开发
在 C 语言开发中, 有一个规范
一个 .c 文件是一类非常紧密关系的函数集
一般使用功能性的名字作为文件名
math.h -> math.c
stdio.h -> stdio.c
stdlib.h -> .stdlib.c
#include
1>尖括号表示从系统路径下进行寻找头文件 #include <>
2>双引号表示从当前文件夹路径开始找文件, 如果找不到再到系统路径下寻找 #include " "
5 函数的递归
递归, 所谓的函数递归就是指, 函数自己调用自己, 或间接调用自己
void func() {
func(); // 自己调用自己
}
void func2();
// 间接的调用自己
void func1() {
func2();
}
void func2() {
func1();
}
1>程序设计中递归结构常常使用在算法设计的初始阶段
算法设计中常常利用相关递推关系设计递归结构
而算法实施的时候, 常常又将递归转换成非递归结构, 以提高效率
- 黑马程序员--C语言基础-函数
- 黑马程序员-C语言基础六:函数
- 黑马程序员------C语言基础 函数
- 黑马程序员-----------C语言基础-----------函数
- 【黑马程序员】C语言基础-函数
- [黑马程序员][C语言]基础
- 黑马程序员-IOS-C语言基础-函数及内存剖析
- 黑马程序员_3 C语言基础-函数-进制-位运算
- 黑马程序员_iOS开发C语言基础之函数
- 黑马程序员-IOS-C语言基础-scanf函数
- 黑马程序员——C语言基础(四)函数
- 黑马程序员--C语言基础-几个常用函数
- 黑马程序员——c语言基础:函数
- 黑马程序员IOS基础---C语言学习之函数
- 黑马程序员——c语言基础:scanf函数
- 黑马程序员——c语言基础:函数
- 黑马程序员---C语言基础---函数、参数、返回值
- 黑马程序员——C语言基础---函数
- python文档字符串的作用及书写规范
- iOS应用崩溃日志分析
- 平衡二叉树的插入旋转
- 单源最短路径(一样有点贪心的感觉,n-1次循环,不断进行更新源点到其它各点距离)
- IDEA 14.1.3-import之前的scala项目报错:Exception in thread "main" java.lang.ClassNotFoundException: kmust.hj
- 黑马程序员------C语言基础 函数
- BC400-Unit2:ABAP Workbench Introduction
- C# array
- Perl Learning 7 The match of Regular Expression
- Web.xml配置详解之context-param
- C#之IEnumberable & IQueryable
- C#委托类型 - (System.Delegate)
- 关于destoon 商城栏目增删改~
- LeetCode 6 ZigZag Conversion