iOS——函数
来源:互联网 发布:dijkstra算法步骤s=, 编辑:程序博客网 时间:2024/06/05 11:20
函数 : 能够完成特定功能的代码段。
函数的好处: 1. 使代码更加简洁 2. 复用性比较强 3. 具有可移植性
4. 可修改性 5. 安全性
如何自定义函数: 有无返回值,是否需要参量
具体可以分为以下四种: 无返无参、无返有参、有返无参、有返有参。
* 无返无参 : void 空 ,表示函数没有返回值;
void buyRewind( );
* 无返有参: void 空,但是有返回值,而且为函数提供参数
void buyRewind ( int money ) ;
* 有返无参: 根据需要的返回值来选择函数前的函数类型;、 调用函数名称前面可以用一个变量来接受返回值;
int buyRewind ( );
float buyRewind ( );
char buyRewind ( );
int a = buyRewind ( );* 有返有参: 函数括号内需要输入为函数内提供的参数
int buyRewind ( int money );
如何使用函数:
在一个函数里使用另外一个函数,叫做函数的调用,被调用的函数叫做被调函数,在哪个函数里调用,那么它就是主调函数。
函数调用的格式: 函数名(参数列表);// 无参的列表可以不写
void swap(int a,int b); // 用于写在 main 函数之外的函数声明
void swap(int a,int b){
printf(“a = %d,b = %d\n”,a,b);
int temp = a;
a = b;
b = temp;
printf(“a = %d,b = %d\n”,a,b);
} // 函数体
// “数组名”作为函数的参数,其实传进来的事在内存中的地址;只有拿到数据在内存中的地址,才能在函数中修改它的值。
冒泡排序法的函数:
void BubbleSort(int arr[],int count){ // count 数组元素的个数
for(int i = 0;i < count-1 ;i++){
for(int j = 0 ;j < count-1-i;j++){
if(arr[j] > arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
void printArray(int count,int arr[]){ // 遍历函数的封装
// 遍历数组
for(int i = 0;i < count;i++){
printf(“%d\t”,arr[i]);
}
}
函数的调用:
* 定义函数的时候,参数列表里的参数是形参* 调用函数的时候,传进来的函数是实参* 带有参数的时候,在被调用的时候,传进的实参只是将实参里边的值拷贝一份赋值给了形参,函数运行时真正修改的只是形参,并未对实参有任何影响。* 形参的类型和个数,决定了实参的类型和个数调用上述的冒泡排序函数:
int arr2[5] = {1,2,3,4,5};
BubbleSort( arr2,5 );
// 输入的数组元素个数5可以使用 sizeof(数组名) / sizeof (数组名[0]) 代替
// 由于冒泡排序没有返回值,所以不用给予参数
- iOS——函数
- iOS编程——CGAffineTransform相关函数
- 15、swift开发iOS——函数
- iOS基础(c)—函数
- 黑马程序员 ——ios基础 ——函数
- 黑马程序员——IOS基础(函数)
- iOS开发学习第十九课——匿名函数 Block
- iOS开发分分钟搞定C语言——函数
- iOS开发分分钟搞定C语言 —— 函数
- iOS runtime——函数/使用方法/使用场景/示例
- 25、swift开发iOS——析构函数
- iOS开发Swift篇—(七)函数
- iOS开发Swift篇—(八)函数(2)
- iOS开发数据库篇—SQLite常用的函数
- iOS开发数据库篇—SQLite常用的函数
- iOS开发数据库篇—SQLite常用的函数
- iOS 数据库篇6—SQLite常用的函数
- ios学习路线—C语言(函数,数组,字符串,指针)
- python的开发手册 pydoc
- iOS——指针
- 史上最易懂的Android jni开发资料--NDK环境搭建
- HP刀片服务器系统Flex-10 VC配置与VMware vSphere网络设计
- 阴阳
- iOS——函数
- javaweb中静态文件的常用处理方法汇总
- .NET学习(八)UpdatePanel组件的使用
- 【codechef】s=abs(这部分数-剩下的数),求所有选取方式的s之和
- 多边形重心问题
- 转:iOS--多线程开发,其实很简单
- iOS Swift语言概述 —— HERO博客
- 《Android群英传》读书笔记(12)第十二章:Android 5.X新特性详解
- spring3.1xml配置和注解两种方式总结