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的特征和行为 子类能继承父类全部的特征和行为(私有变量 ...
随机推荐
- 使用AlarmManager定时更换壁纸----之二
import java.io.IOException; import android.app.Service;import android.app.WallpaperManager;import an ...
- [示例]NSPredicate基础-查询数组中负荷条件的子集
代码: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepo ...
- 在 Ubuntu 14.04/15.04 上配置 Node JS v4.0.0
大家好,Node.JS 4.0 发布了,这个流行的服务器端 JS 平台合并了 Node.js 和 io.js 的代码,4.0 版就是这两个项目结合的产物——现在合并为一个代码库.这次最主要的变化是 N ...
- java反射之Constructor简单应用
Constructor类是java反射中重要的类,它是对类中构造器的描述的类.类似于Method(对类中方法的描述的类),Field(对类中属性的描述的类). 通过创建Constructor的对象实例 ...
- [Jquery]焦点图轮播效果
$(function(){ var $next=$(".right"); var $prev=$(".left"); var $list_nu ...
- redis2.8--主从机同步流程
- FFT快速傅立叶变换的工作原理
实数DFT,复数DFT,FFTFFT是计算DFT的快速算法,但是它是基于复数的,所以计算实数DFT的时候需要将其转换为复数的格式,下图展示了实数DFT和虚数DFT的情况,实数DFT将时域中N点信号转换 ...
- julia生成指定格式的字符串.jl
julia生成指定格式的字符串.jl """ julia生成指定格式的字符串.jl http://bbs.bathome.net/thread-39829-1-1.htm ...
- HTML--9表单和验证事件
1.表单验证<form></form> (1).非空验证(去空格) (2).对比验证(跟一个值对比) (3).范围验证(根据一个范围进行判断) (4).固定格式验证:电话号码, ...
- combox源码解析
/** * jQuery EasyUI 1.3.2 * * Copyright (c) 2009-2013 www.jeasyui.com. All rights reserved. * * Lice ...