函数 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=0; int dayofMonth[12]={31,28,31,30,31,30,31,31,30,31,30,31}; if (year%400==0||(year%4==0&&year%100!=0)) { dayofMonth[1]=29; } for (int i=0; i<month-1; i++) { dayCount+=dayofMonth[i]; }dayCount+=day; return dayCount; } int main(int argc, const char * argv[]) { int sum=dayofDate(2012, 2, 12); printf("%d",sum); return 0; }
函数声明
函数声明也就是函数的描述,也叫函数原型
从规范的角度,不要省略函数声明。 写到一个头文件中引用函数
形参 实参
形参 出现在函数定义中,以假名字来表示函数调用时需要提供的值
实参 出现在函数调用中的表达式
注意:函数调用中,形参会拷贝实参内容,传递参数是给函数传递信息的一种方法、
数组元素作为参数,与普通变量一样
数组作为参数,把数组名传?,即数组的?地址
函数嵌套
c语言不允许函数嵌套定义,但是允许函数嵌套调用(避免嵌套定义)
不能在一个函数里写函数实现
递归函数 用的少
递归调用:函数体内调用函数本身 计算阶乘
static与const
变量的作用域:变量的有效范围
全局变量 局部变量
注意:外部变量和局部变量可重名,但是在局部变量作?域内只能访问局部变量。
static 无论函数用不用static静态变量,这个变量都占用内存。。。只初始化一次
static修饰的函数 只能在本文件中使用,在其他文件中不能使用。
安装ntfs 插件使u盘可读可写
const修饰的变量不能被修改
作用:保护变量不被修改。