iOS学习笔记---c语言第六天
函数 function
命名规范:工程名第一个字母大写,变量函数名小写,不要用拼音和中文, eg:lessonFunction
一、函数声明定义
函数是具有特定功能的代码块 作用:模块化程序
用函数的好处:简化程序、提高开发效率、方便阅读和修改等
函数定义:
返回值类型 函数名(形式参数)
{
语句
return 返回值;
} 返回值类型:viod int char float..... void下面可以不写return ,int 下面返回值为整型,char下面返回值为字符型.....
通过函数中的return函数返回给主函数的值,称之为函数的返回值。一个函数只有一个返回值
函数分类 : 库函数 自定义函数;有返回值函数 无返回值函数; 有参数的函数 无参数的函数;
//输入年月日,看是该年的第几天
#import <Foundation/Foundation.h>
int dayofDate(int year,int month,int day)
{
int dayCount=;
int dayofMonth[]={,,,,,,,,,,,};
if (year%==||(year%==&&year%!=)) {
dayofMonth[]=;
}
for (int i=; i<month-; i++) {
dayCount+=dayofMonth[i];
}dayCount+=day;
return dayCount;
} int main(int argc, const char * argv[])
{
int sum=dayofDate(, , );
printf("%d",sum);
return ;
}
函数声明
函数声明也就是函数的描述,也叫函数原型
从规范的角度,不要省略函数声明。 写到一个头文件中引用函数

形参 实参
形参 出现在函数定义中,以假名字来表示函数调用时需要提供的值
实参 出现在函数调用中的表达式
注意:函数调用中,形参会拷贝实参内容,传递参数是给函数传递信息的一种方法、
数组元素作为参数,与普通变量一样
数组作为参数,把数组名传⼊,即数组的⾸地址
函数嵌套
c语言不允许函数嵌套定义,但是允许函数嵌套调用(避免嵌套定义)
不能在一个函数里写函数实现
递归函数 用的少
递归调用:函数体内调用函数本身 计算阶乘
static与const
变量的作用域:变量的有效范围
全局变量 局部变量
注意:外部变量和局部变量可重名,但是在局部变量作⽤域内只能访问局部变量。
static 无论函数用不用static静态变量,这个变量都占用内存。。。只初始化一次
static修饰的函数 只能在本文件中使用,在其他文件中不能使用。
安装ntfs 插件使u盘可读可写
const修饰的变量不能被修改
作用:保护变量不被修改。
iOS学习笔记---c语言第六天的更多相关文章
- iOS学习笔记---oc语言第六天
Block .数组高级 block本质上就是匿名函数(没有名称的函数) block语法和函数指针很相似 回顾函数 函数:C语⾔中,实现某一类功能的代码段. 完整的函数包含两部分:函数声明.函数定义 函 ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- IOS学习笔记06---C语言函数
IOS学习笔记06---C语言函数 -------------------------------------------- qq交流群:创梦技术交流群:251572072 ...
- iOS学习笔记---oc语言第一天
第一讲 初始类和对象 c语言的超集,允许在oc中使用c语言源代码.编译器兼容c语言程序 具备完善的面向对象特性 包含一个运行时系统 类库丰富 面向对象编程 oop 面向对象语言:c++ java ...
- iOS学习笔记---c语言第八天
指针 首先将变量a的地址存放在另一个变量中,比如存放在变量b中,然后通过变量b来间接引用变量a,间接读写变量a的值.用来存放变量地址的变量,就称为"指针变量" int *p=nul ...
- iOS学习笔记---oc语言第九天
初级内存管理 iOS应用程序出现crash(闪退),90%以上是内存问题////其他:数组越界,方法只声明没实现 内存问题体现在两个方面:内存溢出\野指针异常 内存溢出:程序运行超出内存上限 野指针异 ...
- iOS学习笔记---oc语言第五天
字典,数组 ,集排序 一.字典类 存储以下数据 name:张三; sex:男;age:18 film:风暴; playcount:10000次;price:60元 字典类用于保存具有映射关系(key- ...
- iOS学习笔记---oc语言第四天
字符串 数组 一.使用苹果帮助文档 学会使⽤用苹果帮助⽂文档是开发者的⼀一项技能 Inherits from 继承⾃自 Conforms to 遵循什么协议 Framework 属于哪个框架 Avai ...
- iOS学习笔记---oc语言第三天
继承.初始化方法 一.继承 继承的上层:父类 继承的下层:子类 继承是单向的,不能相互继承 继承具有传递性:A继承于B,B继承于C,A具有B和C的特征和行为 子类能继承父类全部的特征和行为(私有变量 ...
随机推荐
- bzoj 2152: 聪聪可可
#include<cstdio> #include<algorithm> using namespace std; ; ],head[N],son[N],f[N],d[N],r ...
- 一个高在线(可以超过1024)多线程的socket echo server(pthreads 和 libevent扩展)
研究了3周吧,本来打算用pthreads+event扩展的,结果event扩展太原始了,太多函数了,实在不知道怎么在外部随时发送数据给客户端,所以改用libevent, 改用libevent之后花了2 ...
- ZOJ 3647 Gao the Grid dp,思路,格中取同一行的三点,经典 难度:3
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4837 三角形的总数=格子中任取3个点的组合数-同一横行任取3个点数目-同一纵行 ...
- 汉字转拼音Pinyin4j工具(C#、Java都可用)
C#用法: string pinyin=GetStringPinYin("张三"); //方法如下 public static string GetStringPinYin(str ...
- MATLAB图像处理函数汇总(一)
1.applylut功能: 在二进制图像中利用lookup表进行边沿操作.语法:A = applylut(BW,lut)举例lut = makelut('sum(x(:)) == 4',2);BW1 ...
- Android开发-略讲adb命令和SQLite数据库运用
adb.exe ADB -Android Debug Bridge, 是 Android sdk 里的一个工具,用这个工具可以直接操作管理 Android 模拟器或者真实的 Android 设备 简 ...
- JS 代理模式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- C++ primer的第二章的主要内容
这第二章主要是介绍了C++中基本的内置数据类型:整型与浮点型.介绍了什么是变量的过程中了解到了左值与右值的概念.左值是可以出现在赋值语句的左边或者右边,也就是说可以放在等号的左右两边,而右值只能是出现 ...
- 有关PHP的字符串知识
字符串是由一系列字符组成,在PHP中,字符和字节一样,也就是说,一共有256种不同字符的可能性. 字符串型可以用三种方法定义:单引号形式.双引号形式和Heredoc结构形式. 1.每条指令可要记得使用 ...
- Android开发中的ANR问题如何避免?
在Android中, Activity Manager 和 Window Manager system services 会监控每个程序的运行,当程序出现如下三种种情况的时候就会弹出ANR的提示对话框 ...