C语言-------多文件编译

(1)前段时间,学长讲解宏的一些知识  也提起了那个多文件编译,同过看别人的博客,自己也懂了一些,现在来总结一下这个多文件编译,其实和java里面的那个class的调用好像有联系

其定义即可以理解成:就是属于不同的C语言名字下,例如helo.c  还有  hell.c  这两个文件,然后互相调用彼此的函数,这就是自己理解的多文件编译;

下面是你编写完函数后,怎么调用函数得常规做法,在C-free下面编译的

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 void func1();     //函数声明
 4 void func2();     //函数声明
 5 void func3();     //函数声明
 6 int main()
 7 {
 8     printf("hello world!\n");
 9     func1();
10     func2();
11     func3();
12     system("pause");
13     return 0;
14 } 
15 //函数实现
16 void func1()
17 {
18      printf("我是函数1\n");
19  }
20 void func2()
21 {
22      printf("我是函数2\n");
23  }
24 void func3()
25 {
26      printf("我是函数3\n");
27      } 

这个是结果展示

这个程序所有的函数实现都在同一文件中,代码量很少,所以你能够看懂。假如代码量很多时,你会发现这样的程序调试很费力。

为了体现C语言模块化的编程思想,我们可不可以将上面3个函数func1,func2和func3的实现单独放在一个文件中呢?答案是肯定的

·······························然后方法(1)通过多文件编译的方法,来实现那个多文件编译

首先在C-free里面的菜单栏找到---- 工程,然后就点开---新建工程-----然后

选择第一个,编写好自己的工程名称,选好保存位置,点击确定

然后到了这个界面

选择第一个  后面的直接下一步就行了

然后你在菜单栏的 ---文件---那里找到---新建------但是注意把这个新建立的.c文件放在你刚刚建立的那个工程目录下面,

然后可以在建立.h文件,但是还注意,还是你把它放在你建立的工程文件夹下下面

例如编写的.h文件是,名字叫file.h

1 int max(int a,int b)
2 {
3     if(a>b)
4     return a;
5     else
6     return b;
7
8 }

然后建立一个main.c文件,

1 #include<stdio.h>
2 #include"file.h"
3 int main()
4 {
5     int c= max(3,4);
6     printf("%d\n",c);
7     return 1;
8
9 } 

注意在上面的头文件那里加入了#include“file.h”

这个就是简单的多文件编译

时间: 2024-10-10 11:04:38

C语言-------多文件编译的相关文章

C语言多文件编译

fun.c #include <stdio.h> int fun1(){ printf("The first function!\n"); return 0; } int fun2(){ printf("The second function!\n"); return 0; } int fun3(){ printf("The third function!\n"); return 0; } fun.h #ifndef _FUN_H #

Ubuntu的多文件编译以及c语言的数组、函数

闲言少叙,直接切入主题. 一.Linux下的多文件编译(Ubuntu系统). 对于小程序来说,往往一个.c文件就足够了,里面包含了各种主函数和功能函数,以及函数的声明等等.但是这样的弊端主要有两点,一是可读性较差,所有程序都在一个文件中造成检查和分析时候很不方便,特别是对于较大的工程来说,是无法想象的.第二点就是保密性,在工作中,我们要将程序交给客户,但是我们并不想让客户知道我们的源代码,所以要用这种方式将功能函数以.o的文件(二进制码)交给客户,确保自己的劳动成果不被别人剽窃,可以做到保护知识

C语言link过程详解(多文件编译过程)

原文摘自:http://www.cppblog.com/shifan3/archive/2007/01/05/17325.html详解link有些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错误信息不能定位到某一行).或者对语言的一些部分不知道为什么要(或者不要)这样那样设计.了解本文之后,或许会有一些答案.首先看看我们是如何写一个程序的.如果你在使用某种IDE(V

Objective-C语言-方法和文件编译

OC方法和文件编译 一.OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变量 (4)调用格式   [对象名  对象方法名]: (5)设计一个学生类和狗类,练习对象方法的使用. 学生类的声明: 学生类的实现: 狗类的声明: 狗类的实现: 主程序: (二)类方法 (1)类方法以+开头  如+(void)put; (2)类方法只能由类来调用 (3)类方法中不能访问实例(成员)变量,因为类方法又类来调用,并没

C语言头文件的使用(转载)

C语言头文件的使用 ——by janders 转载请注名作者和出处,谢谢! 原文:http://blog.csdn.net/janders/article/details/611081 C语言中的.h文件和我认识由来已久,其使用方法虽不十分复杂,但我却是经过了几个月的“不懂”时期,几年的“一知半解”时期才逐渐认识清楚他的本来面目.揪其原因,我的驽钝和好学而不求甚解固然是原因之一,但另外还有其他原因.原因一:对于较小的项目,其作用不易被充分开发,换句话说就是即使不知道他的详细使用方法,项目照样进行

(转) C语言头文件、库文件的查找路径

在程序设计中,文件包含是很有用的.一个大的程序可以分为多个模块,由多个程序员分别编程.有        些公    用的符号常量或宏定义等可单独组成一个文件,在其它文件的开头用包含命令包含该文件即可使        用.这样,可避免在每个文件开头都去书写那些公用量,从而节省时间,并减少出错. 对文件包含命令还要说明以下几点:1. 包含命令中的文件名可以用双引号括起来,也可以用尖括号括起来.例如以下写法都是允许的:    #include"stdio.h"    #include   

C语言是怎么编译到执行Hello world的。

1.首先在编译器上写出你的Hello world程序,比如我在linux平台用GCC编译器进行编译,此时程序名称应该是以.c为后缀的文件名. 2.编译第一步,启动cpp预处理器,进行预处理操作,展开头文件替换,加载头文件等等.编译完成之后生成一个.i为后缀的文件 此时使用命令:gcc -E hello.c -o hello.i 如果有兴趣可以打开hello.i文件查看里面的内容. 3.第三步,该启动gcc/cc编译器了,该编译器可将预处理后后的.i文件编译成平台汇编,根据平台的差异编译成不同的汇

ios-(2)第一个C语言程序(理解编译、连接、运行)

一.开发工具的选择 1. 可以用来写代码的工具:记事本.ULtraEdit.Vim.Xcode等. 2. 选择XCode的原因:苹果公司官方提供的开发利器.简化开发的工程.有高亮显示功能. 3. 使用XCode新建一个C程序的源代码文件(扩展名为.c或者.C) # 开发XCode # 新建文件 # 选择文件类型 .c 二.代码编写 1.程序结构 * C程序的结构:由函数组成 # 任何一个C语言程序都市有一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为"函数&q

C语言头文件、库文件的查找路径

在 程序设计中,文件包含是很有用的.一个大的程序可以分为多个模块,由多个程序员分别编程.有些公用的符号常量或宏定义等可单独组成一个文件,在其它文件的开头用包含命令包含该文件即可使用.这样,可避免在每个文件开头都去书写那些公用量,从而节省时间,并减少出错. 对文件包含命令还要说明以下几点:1. 包含命令中的文件名可以用双引号括起来,也可以用尖括号括起来.例如以下写法都是允许的:    #include"stdio.h"    #include    但是这两种形式是有区别的:使用尖括号表