函数的学习以及用法
2014-07-25 09:20
176 查看
浅谈函数应用
函数存在的意义:
把main函数中复杂的逻辑进行拆分,由一个一个单独的函数来处理一个单独的模块,main函数只是起到宏观调控作用
我们可以自己编写一些函数,实现某些功能,把函数的声明放在.h文件里,把函数的定义即实现放在.m文件里,然后在main.m文件里的main函数里调用实现,但是调用之前一定不要忘记把自己写的文件导入即导入头文件,导入自己编写的头文件用#import "",导入系统头文件用#import <>
此外,一个函数最多不要超过60行代码,20 到 40行最好,一个文件里代码行数最多最好不要超过300行,如果过多了不太好找
2, 函数的定义 : 包含四部分
1), 返回值类型 (要返回的数据类型)
2), 函数名 (给函数起一个名字用于唯一标识函数) 命名规范: 有多个单词组成,除了第一个单词外,其余 单 词首字母大写 (工程名 也由单词组成,并且每个单词首字母都应该大写)
3), 参数列表 (用来接收传入的数据)
4), 函数体 (函数真正的功能,实际做的操作)
3, 函数的使用分为三部分
1), 函数的声明, (写在.h文件中)
2), 函数定义, (函数的实现)(写在.m文件中)
3), 函数的调用, (在main.m文件中的main函数中实现调用)
函数声明和函数定义相比,只是缺少了函数体,并且在最后加了分号为了更清晰: 一个函数用来实现一个单独的功能,在函数内部只写与函数功能有关的代码即可
4, 函数定义有四种格式:
1), 函数定义的第一种格式: 无参数,无返回值 (无返回值时用void)
void like ()
{
printf("I like learning ios \n");
}
2), 函数定义的第二种格式: 有参数,无返回值 (无返回值时用void)
3), 函数定义的第三种格式: 无参数,有返回值 有返回值时
int giveMoney()
{
printf("继续加油,\n");
return 100;
}
return 用于返回值,将返回的数据放在return后面, 谁调用该函数,就将该值返回给谁
切记不要把代码放在return后面,会执行不到
4), 函数定义的第四种格式: 有参数,有返回值
5, 实参 与 形参
实参是实际参数,真实的具体的值,即函数调用时给定的参数叫做实参
形参是形式参数,只用来表示接收什么类型的数据,具体的存储数据未知,即在函数定义时给定的参数是形参
此外切记函数调用时,实参到形参的传递是一个拷贝的过程, 函数与函数之间可嵌套调用,但不可以嵌套定义;
6, 有关变量的作用域
在函数内部定义的变量,只能在函数内部有效,在函数外部,无权访问,所以叫局部变量,(当函数调用时,为变量开辟空间,当函数执行完毕宏,系统回收空间
全局变量,在所有函数中都可以访问到,程序运行期间空间不收回
被static修饰的变量,为静态变量,其特点为:
1), 空间只开辟一次,而且在云期间空间不回收
2), 变量只初始化一次
3), 如果不赋初值,默认为0;
函数存在的意义:
把main函数中复杂的逻辑进行拆分,由一个一个单独的函数来处理一个单独的模块,main函数只是起到宏观调控作用
我们可以自己编写一些函数,实现某些功能,把函数的声明放在.h文件里,把函数的定义即实现放在.m文件里,然后在main.m文件里的main函数里调用实现,但是调用之前一定不要忘记把自己写的文件导入即导入头文件,导入自己编写的头文件用#import "",导入系统头文件用#import <>
此外,一个函数最多不要超过60行代码,20 到 40行最好,一个文件里代码行数最多最好不要超过300行,如果过多了不太好找
2, 函数的定义 : 包含四部分
1), 返回值类型 (要返回的数据类型)
2), 函数名 (给函数起一个名字用于唯一标识函数) 命名规范: 有多个单词组成,除了第一个单词外,其余 单 词首字母大写 (工程名 也由单词组成,并且每个单词首字母都应该大写)
3), 参数列表 (用来接收传入的数据)
4), 函数体 (函数真正的功能,实际做的操作)
3, 函数的使用分为三部分
1), 函数的声明, (写在.h文件中)
2), 函数定义, (函数的实现)(写在.m文件中)
3), 函数的调用, (在main.m文件中的main函数中实现调用)
函数声明和函数定义相比,只是缺少了函数体,并且在最后加了分号为了更清晰: 一个函数用来实现一个单独的功能,在函数内部只写与函数功能有关的代码即可
4, 函数定义有四种格式:
1), 函数定义的第一种格式: 无参数,无返回值 (无返回值时用void)
void like ()
{
printf("I like learning ios \n");
}
2), 函数定义的第二种格式: 有参数,无返回值 (无返回值时用void)
3), 函数定义的第三种格式: 无参数,有返回值 有返回值时
int giveMoney()
{
printf("继续加油,\n");
return 100;
}
return 用于返回值,将返回的数据放在return后面, 谁调用该函数,就将该值返回给谁
切记不要把代码放在return后面,会执行不到
4), 函数定义的第四种格式: 有参数,有返回值
5, 实参 与 形参
实参是实际参数,真实的具体的值,即函数调用时给定的参数叫做实参
形参是形式参数,只用来表示接收什么类型的数据,具体的存储数据未知,即在函数定义时给定的参数是形参
此外切记函数调用时,实参到形参的传递是一个拷贝的过程, 函数与函数之间可嵌套调用,但不可以嵌套定义;
6, 有关变量的作用域
在函数内部定义的变量,只能在函数内部有效,在函数外部,无权访问,所以叫局部变量,(当函数调用时,为变量开辟空间,当函数执行完毕宏,系统回收空间
全局变量,在所有函数中都可以访问到,程序运行期间空间不收回
被static修饰的变量,为静态变量,其特点为:
1), 空间只开辟一次,而且在云期间空间不回收
2), 变量只初始化一次
3), 如果不赋初值,默认为0;
相关文章推荐
- js学习三、“普通”函数中的this,以及call,apply用法
- C语言学习笔记(三) 输入输出函数的基本用法以及运算符
- 虚函数的用法以及作用
- AS3.0 实例学习 熟悉addChild和removeChild在不同的swf之间的运用,以及loader的用法
- Windows API函数之PlaySound函数以及sndPlaySound函数用法总结
- C语言中基本的输入和输出函数的用法第一讲(C语言学习随笔三)
- ASP生成静态网页,学习CASE的用法,以及“权限”的一种控制方法
- 异或运算的巧用以及assert() 函数用法
- jstl标签学习总结-以及的用法
- 每天学习一算法系列(3)(设计包含min函数的栈,要求函数min、push以及pop的时间复杂度都是O(1))
- 视频10学习心得----if语句的嵌套结构以及用法
- srand()以及rand()函数用法(zz)
- Fleaphp函数用法举例,供大家学习
- Windows API函数之PlaySound函数以及sndPlaySound函数用法总结
- C++ Data Structure 学习笔记 (2011.5.2)——Cin的用法详解以及文件的读取
- 数据库学习:oracle的递归写法,分析函数写法,以及teradata的取一定数量记录的写法
- 【转载】const用法详解,如何修饰变量,返回值以及成员函数
- Linux 初始 RAM 磁盘(initrd)概述 学习 initrd 的剖析、创建以及在 Linux 引导过程中的用法
- Windows API函数之PlaySound函数以及sndPlaySound函数用法
- srand()以及rand()函数的用法