工具/材料
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、成都网站建设、外贸网站建设、靖州网络推广、微信小程序开发、靖州网络营销、靖州企业策划、靖州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供靖州建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
Ubuntu16.04
gcc+vim
01
打开Ubuntu,并在目标路径下开启一个终端。
02
选定一个路径,使用touch命令创建三个文件,function.h,function.c,test.c,分别蔽空用来做函数头文件、函改并租数源文件以及测试文件
03
这里以四则运算函数为例说明函数的编写流程与调用流程。首核兆先用vim命令与vsplit依次打开三个文件。
04
在头文件中添加重复包含的宏,并添加四则运算的函数声明。
05
在function.c中将function.h包含进来,并具体实现四个方法。注意出发要对除数是否为0进行判断。
06
然后编写测试程序进行测试。总的程序代码如下:
07
保存所有的程序并退出,使用gcc进行编译,并运行得到的结果如下。这就是函数的声明、定义以及调用。
可以调用。
C语言最基本的模块为茄虚函数,任意函数都可以调用其它任意一个函数,包括函数本身。
1、自定义函数调用其它自定义函数的例子:
#include stdio.h
void fun1(int a)//自定义函数fun1。
{
printf("%d\n",a);
}
void fun2(int m, int n)//自定义函数fun2。
{
fun1(m);
fun1(n);//调用两次另一个自定义函数。
}
int main()
{
fun2(2,3);//调用fun2.
}
在这个例子中,就是主函数调用自定义函数fun2,然后fun2调用另一个自定义函数fun1.
2、不仅可以调用其它自定义函数,还可以调用自己本身。
这种称为递归。
以下是通过递归,计算1+2+3+...+n值的代码:
#include stdio.h
int fun(int n)
{
if(n == 1) return 1;
return n+fun(n-1);/颤乎燃/顷兄递归调用,返回和值。
}
int main()
{
printf("%d\n", fun(100));//计算1到100的和值。
return 0;
}
intpingfang(x)\x0d\x0a{\x0d\x0ainta=0;//声明局部变量a,并初始化它的值为0。\x0d\x0ax=x*x;//计算x的平方并赋给x。\x0d\x0aa=x;//赋值给a。\x0d\x0areturna;//带返回值枝碰,返回a。\x0d\x0a}//这是一个子函数,名字pingfang,用于计算输入数的平方。\x0d\x0avoidmain()//这是主函数,无返回值的。\x0d\x0a{\x0d\x0aintb,d;//声明局部变量。\x0d\x0ascanf("%d",b);//输入b的值\x0d\x0ad=pingfang(b);//调用子函数,计算b的平方,并赋给d。猛仿谈\x0d\x0aprintf(“d=%d”,d);//输出d的值\x0d\x0a}\x0d\x0a随手大游写的一个,可能不是很规范,大概就是这样吧
可以调用。
一、从一个源文件里调用另一个源文件的函数。在源文件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_
#includestdio.h
void trans2(double B) ;
double trans1() ;
#endif
2、把相应的函数定义写在.c文件中。这里要强调一点:要加上#include ".h",这个一般作为一种工程规范。因为如果.c文件中的函数也需要调用同个.c中的其它函数,那么这个.
c往往会include对应的.h,这样就不需要为声明和调用顺序而发愁了。比如头文件里进行了变量的声明,这个时候对应的.c文件是一定要加上这个头文件的。
3、再在其他的main.c文件开头添加#include "a.h"。
扩展资料:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出拿搭只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include文件名
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#includemath.h//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。