zoukankan      html  css  js  c++  java
  • C语言中如何调用另一个源文件里的函数

    在开发大型项目时,我们常常需要将一份源码分成多个源文件来进行编写,这样可以方便后期的维护。下面就介绍如何从一个源文件里调用另一个源文件的函数。

    在源文件A1.c中调用A2.c 中的函数有两种方法:

    1.在A2.c中有完整的函数定义,在A1.c中添加一下要用到的函数原型(声明)就可以了,例如:

    • 在A2.c中:有函数void A2(){...};。
    • 在A1.c中:在文件前头增加一行:void A2();就可以了。

      
    2.把A2.c中完整定义的函数的原型,写到一个A2.h文件中,然后在A1.c的文件头增加#include "A2.h"就可以了。


    以上两种方法,在A1.c中都可以正常的调用,就跟在A2.c中调用一样。

    其实函数默认是外部的,只要在其他文件中声明就能使用;但是注意如果在前面加上static,就只能在本文件中使用了,不能再被其他的文件调用。


    怎样编写头文件

    1.一个.h文件要 对应有一个.c文件,这样链接器就可以调用这个文件里的函数。比如a.h 和 a.c。

    在.h文件中:

    #ifndef __A_H_
    
    #define __A_H_
    
    #include<stdio.h>
    
    void trans2(double B) ;
    
    double trans1() ;
    
    #endif

    2.把相应的函数定义写在.c文件中。这里要强调一点:要加上#include ".h",这个一般作为一种工程规范。因为如果.c文件中的函数也需要调用同个.c中的其它函数,那么这个.c往往会include对应的.h,这样就不需要为声明和调用顺序而发愁了。比如头文件里进行了变量的声明,这个时候对应的.c文件是一定要加上这个头文件的。

    3.再在其他的main.c文件开头添加#include "a.h"。

  • 相关阅读:
    Blocks to Cubes
    poj1113凸包
    AtCoder Regular Contest 078D
    Codeforces Round #400
    hdu2196树形dp
    Codeforces Round #409
    Codeforces Round #424
    hdu1520树形dp第一题
    Codeforces Round #412
    poj2823单调队列
  • 原文地址:https://www.cnblogs.com/mlgjb/p/8558060.html
Copyright © 2011-2022 走看看