c语言如何定义和引用函数 c语言如何定义和引用函数的关系

c语言函数的定义与调用# include stdio.h
int main(void)
{
int a, b, c,t;
printf("请输入3个值: \n");
scanf("%d %d %d", a, b, c);
printf("%d %d %d\n", a, b, c);
if(ab)
{
t = a;
a = b;
b = t;
}
if(ac)
{
t = a;
a = c;
c = t;
}
if(bc)
{
t = b;
b = c;
c = t;
}
printf("%d\n", c);
}
C语言中如何引用其它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 。
2、把相应的函数定义写在.c文件中 。这里要强调一点:要加上#include ".h",这个一般作为一种工程规范 。因为如果.c文件中的函数也需要调用同个.c中的其它函数,那么这个.c往往会include对应的.h 。比如头文件里进行了变量的声明,这个时候对应的.c文件是一定要加上这个头文件的 。
3、再在其他的main.c文件开头添加#include "a.h" 。
c语言中怎么调用自定义函数可以的,前提是,在使用一个函数之前必须先对他进行声明:
//void B();声明B函数的存在 。
void A()
{
B();//非法,程序执行到此时并不知道B函数的存在 。
}
void B()
{
}
或者
#include stdio.h
#include stdlib.h
#include math.h
int fa(int n)
{
int a;
for(a=2;a=sqrt(n*1.0),n%a!=0;a++);
if(asqrt(n*1.0))
return(1);
else
return(0);
}
void main( )
{
int n,q;
scanf("%d",n);
扩展资料
从函数定义的角度看,函数可分为库函数和用户定义函数两种 。
(1)库函数
由C系统提供 , 用户无须定义, 也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文件即可在程序中直接调用 。在前面各章的例题中反复用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函数均属此类 。
(2)用户定义函数
由用户按需要写的函数 。对于用户自定义函数,不仅要在程序中定义函数本身,而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用 。
c语言中如何引用上面函数的和引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样 。引用的声明方法:类型标识符
引用名=目标变量名;【例1】:int a; int
ra=a; //定义引用ra,它是变量a的引用 , 即别名
说明:
(1)在此不是求地址运算,而是起标识作用 。
(2)类型标识符是指目标变量的类型 。
(3)声明引用时,必须同时对其进行初始化 。(4)引用声明完毕后,相当于目标变量名有两个名称 , 即该目标原名称和引用名 , 且不能再把该引用名作为其他变量名的别名 。ra=1; 等价于 a=1;(5)声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元 。故:对引用求地址,就是对目标变量求地址 。ra与a相等 。(6)不能建立数组的引用 。因为数组是一个由若干个元素所组成的集合 , 所以无法建立一个数组的别名 。

推荐阅读