05-初识OC多文件编程(第4个OC程序)

2.m文件和.c文件混用开发

1)编写3个文件

       one.m 代码如下:

1 //将two.h头文件拷贝至此
2 #import "two.h"
3 int main(int argc, const char * argv[])
4 {
5     //调用test函数
6     test();
7     return 0;
8 }

       two.h  代码如下:

1 //test函数的声明
2 void test();

   two.c 代码如下:

1 //因为使用了printf函数,所以将stdio.h拷贝至此
2 #include <stdio.h>
3 //test函数的定义(实现)
4 void test()
5 {
6     printf("调用了test函数
");
7 }

(2)终端指令

  1. 编译:cc c one.m two.c
  2. 链接:cc one.o two.o

    这里必须同时链接 one.o two.o文件

    由于没有引入Foundation框架,这里不需要加上-framework Foundation

  1. 运行:./a.out

(3)程序分析:

  1. two.h文件中对test函数进行了声明(声明一般写在.h头文件中)。
  2. two.c文件中对test函数进行了定义。
  3. cc one.o two.o

    两个.o文件必须同时进行链接,因为one.m缺少test函数的定义,two.c缺少main函数的定义

    由于没有引入Foundation框架,这里不需要加上-framework Foundation

  1. one.m引入了two.h头文件(即拥有了test函数的声明),故可调用test函数。

人生之路,不忘初心,勿忘始终!
原文地址:https://www.cnblogs.com/xdl745464047/p/3995755.html