//
// operation.h
// C05 函数-2
//
// Created by xalo on 15/10/20.
// Copyright (c) 2015年 Darling.com. All rights reserved.
//
#import <Foundation/Foundation.h>
void printHello(); // 声明该函数
// 声明并定义四个函数,分别实现+、-、*、/功能,(有返有参)
int sum(int a, int b);
int jianFa(int i, int j);//sub
int chengFa(int i, int j); //mul
int chuFa(int i, int j); //div
//
// operation.m
// C05 函数-2
//
// Created by xalo on 15/10/13.
// Copyright (c) 2015年 Darling.com. All rights reserved.
//
#import "operation.h"
// 定义一个函数,实现打印“hello word”功能
void printHello()
{
printf("hello word\n");
}
// +
int sum(int a, int b)
{
return a + b;
}
// -
int jianFa(int i, int j)
{
return i + j;
}
// *
int chengFa(int i, int j)
{
return i * j;
}
// /
int chuFa(int i, int j)
{
// 除法的除数不能为0,所以在这里判断,如果除数为0,则返回-1,作为一种异常编码,将异常编码返回。
// 在OC中也可直接来一个return语句结束函数(这里不可以)
if (j == 0) {
return -1;
}else{
return i / j;
}
}
// 使用递归的方式实现5!
//int jieCheng(int n)
//{
// int result = 1;
// // 5 * 4
// // (5 * 4) * 3
// if (n == 0 || n == 1) {
// return 1;
// }
// result = n * jieCheng(n - 1);
// return result;
//}
//
// main.m
// C05 函数-2
//
// Created by 康亮亮 on 15/10/20.
// Copyright (c) 2015年 Darling.com. All rights reserved.
//
#import <Foundation/Foundation.h> // <>用来引入系统的文件
// 由于"printHello"函数声明、定义在其他文件中,所以想在这里使用该函数,必须先引入声明部分,也就是.h文件。
// 如果使用多个文件来管理自定义函数时,函数的声明要放在.m中
#import "operation.h" // ""用来引入自己创建的文件
#pragma mark 函数声明:
/*
如果函数定义在主调函数(main函数)之前,函数的声明可以省略。 因为在编译时,编译到主调函数后,已经知道该被调函数的意义,所以不会出现异常。
如果函数定义在主调函数(main函数)之后,务必要在main函数之前对函数进行声明。 声明的意义在于: 告诉系统,后边将出现一个该类型的函数。
一个完整的的自定义函数,应该包含:函数声明、函数定义、函数调用这3个部分。
函数的声明方法:将函数的“返回值类型+函数名+形参列表+;”写在到头文件语句下面,就是一个函数声明。
*/
int main(int argc, const char * argv[]) {
// printHello();
int c = sum(12, 23);
printf("c = %d\n", c);
int d = jianFa(58, 52);
printf("d = %d\n", d);
int e = chengFa(3, 4);
printf("e = %d\n", e);
int f = chuFa(16, 4);
printf("f = %d\n", f);
return 0;
}
/*
完整的自定义函数创建过程:
1.声明----》.h
2.定义----> .m
3.调用----> main.m 注意:#import ".h"用来引入自己创建的文件(是分号,不是<>)
*/