美文网首页
黑马程序员:C语言函数对另外一个源文件函数进行调用(外部函数)

黑马程序员:C语言函数对另外一个源文件函数进行调用(外部函数)

作者: 啊窝额_AOE | 来源:发表于2018-12-07 17:05 被阅读0次

前面文章关于函数的调用都是针对一个源文件中其他函数进行调用的,想要学习函数调用的可以看上一篇文章。有些情况下,函数是可能对另外一个源文件中的函数进行调用的。当一个程序由多个源文件组成的时候,根据函数是否能被其他源文件调用的时候,将函数分为内部函数和外部函数,本文就会围着这外部函数的特点进行讲解,希望每一个在学C语言的小伙伴都能弄懂函数的知识点。

外部函数

在开发大的项目的时候,为了方便团队的协同工作,我们需要把一个项目拆分开,分成很多的源文件来实现。最后再将它们整理在一起。为了减少不必要的重复代码,一个源文件有时候需要调用其他的源文件中定义的函数。那么在C语言当中,可以被其他源文件调用的函数成为外部函数,在调用外部函数之前,需要在当前源文件中定义外部函数。定义外部函数的方式就是在函数的返回值类型前面提那家extern关键字,标准代码如下:

extern int add(int x,int y);

在上面这一行的代码当中,编译器会通过extern关键字知道add()函数是定义在其他的文件当中的外部函数;

我们为了帮助大家更好的理解用法,下面在First c文件中定义一个add()函数,然后second.c文件当中使用first.c文件当中定义的add()函数,first.c和second.c的代码示例如下:

first.c

在上面这个例子当中,并没有包含头文件stdio.h,但是在代码第一行中生命了printf()函数的原型,那么编译器将会根据该原型自动从其他的文件中查找这个函数的定义,之后把这个函数的作用扩展到原型所在的文件里面,所以在本文件中就能调用printf()函数。

注意!在声明外部函数的时候,无论有没有关键字extern,外部函数与函数定义的返回值类型、函数名称都和参数列表必须是一致的。

相关文章

  • 黑马程序员:C语言函数对另外一个源文件函数进行调用(外部函数)

    前面文章关于函数的调用都是针对一个源文件中其他函数进行调用的,想要学习函数调用的可以看上一篇文章。有些情况下,函数...

  • gcc

    C语言 c语言是面向函数的语言,所以c语言中全部都是函数 看看单文件中对函数的生命和调用。 要先对函数进行声明再进...

  • [转载]C语言函数调用栈

    原文地址:C语言函数调用栈(一)C语言函数调用栈(二) 0 引言 程序的执行过程可看作连续的函数调用。当一个函数执...

  • Nodejs学习笔记-函数

    调用本地函数调用外部函数-支持一个函数调用外部函数-支持多个函数字符串方式调用函数 代码:https://gith...

  • 【Solidity学习笔记】外部函数的调用

    3.8 外部函数的调用 在Solidity中,有两种函数调用:内部函数调用和外部函数调用。内部函数调用是指一个函数...

  • 【C语言笔记】<五>函数

    C语言程序是有函数组成的.函数是C语言的基本模块,通过对函数模块的的调用来实现特定的功能 什么是函数 函数就是一段...

  • 递归函数

    1.递归函数概述及用法 一个函数在它的函数体内调用它自身称为递归调用。这种函数称为递归函数。C语言允许函数 的递归...

  • python闭包

    先理解一下函数的引用与调用 打印结果: 闭包 函数套函数,内部函数对外部函数的引用 无法对外部函数的局部变量进行修...

  • 是否还需要在源文件中添加“extern C”?

    c++调用c语言的函数时我们一般在c语言函数声明处用extern "C"包c函数。例如: extern "C"的主...

  • Python调用C语言函数

    ctype说明 ctypes是Python的一个外部库,可以通过Ctypes调用C/C++语言的函数。 ctype...

网友评论

      本文标题:黑马程序员:C语言函数对另外一个源文件函数进行调用(外部函数)

      本文链接:https://www.haomeiwen.com/subject/tvfxhqtx.html