1、形参与实参
形参也是一个变量,被调用时生成存储空间,调用结束后释放存储空间;形参与实参之间的存储空间不同
int main(int argc, const char * argv[]) {//主函数可以有形参,也可以没有形参
@autoreleasepool {
int result = power(10);
NSLog(@"%d",result);
int a = 10;
plus(a);//返回值是0
NSLog(@"in main x = %d",a);//a为10,x为11
// fa(1,2,3,4,5);//当无形参时,实参会被忽略掉,直接丢弃,因为被调用的函数没有形参与其对应
// fb(1,2,3,4,5);//形参指定为void后,调用时不能有实参
// add(10,20,30);//当有形参时,实参不能多,也不能少,实参必须与形参一一对应,顺序不能出错。
add(3.14,2.68);//当形参与实参的数据类型不一致时,以形参为准进行数据转换
NSLog(@"%d",add(3.14,2.98));
}
return 0;
}
值传递:
实参赋值給形参之后,形参在函数体内发生的变化,不会传回給实参。原因:实参和形参存储空间不同
个数的对应关系:当无形参时,实参会被忽略掉,直接丢弃,因为被调用的函数没有形参与其对应。形参指定为void后,调用时不能有实参。当有形参时,实参不能多,也不能少,实参必须与形参一一对应,顺序不能出错。
类型转换:当形参与实参的数据类型不一致时,以形参为准进行数据转换
return :起跳转作用,跳转到整个函数结束位置,结束整个所在函数的运行(最重要的作用);赋值作用
break:跳转到switch的结束位置,结束所在switch语句的运行
**exit(0)函数: **跳转,直接结束整个程序的运行
递归:一种特殊的函数调用的方法,自己调用自己