问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言中外部函数是什么意思23

发布网友 发布时间:2023-10-23 20:52

我来回答

1个回答

热心网友 时间:2024-11-24 19:15

有两种理解.(1)库函数是C语言的内部函数或自带函数,外部函数即程序员自定函数.
(2)凡加写了extern 的函数是外部函数.

第一种理解好懂:

C语言的内部函数指的是C语言自带的函数,无论是动态链接的或静态链接的. 这些函数通过C语言的头文件定义了.
例如, sin(),cos()等数学函数,在math.h中定义了,输入输出函数 printf(),fgetc()在stdio.h中定义了,时间函数表time(),ctime()等在time.h中定义了.还有许多其他内部函数.编程时,只要用#include <库名.h>写在编程头部,程序中就可调用.

自定义函数,就是用户自己写的函数.

第二种凡加写了extern 的函数是外部函数:

自定义函数可以与程序的main()写在同一个文件中,也可以写在另一个文件中,这时你可能还另写自己的头文件或者写extern....,告诉编译器,main中用到的某某函数是"外部函数".
例如,main()在a.c中,自定义函数my_func()在a2.c中

a.c内容:
#include <stdio.h>
extern float my_func(float a);
main()
{
printf("result=%f\n",my_func(2.0));
}

a2.c 内容:
float my_func(float a)
{
return a;
}

编译:
cl -c a.c [得到a.obj]
cl -c a2.c [得到a2.obj]
cl a.obj a2.obj [链接成a.exe]
运行:
a.exe

result=2.000000

extern float my_func() 是外部说明,告诉编译,main()里的my_func是外部函数,要通过链接(.obj)得到.

如果把my_func写在a.c里:
#include <stdio.h>
float my_func(float a){
retun a;
}
main()
{
printf("result=%f\n",my_func(2.0));
}

my_func() 就不是外部函数.
编译:
cl a.c [得a.exe]
运行:
a.exe

result=2.000000
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 延长社保缴纳期限对企业有什么好处? 请问社保五险的迟交有什么影响?9 社保延期缴纳待遇会不会受到影响呢?1 社保延期缴纳不受影响吗?1 对开门冰箱尺寸一般多少?94 贵州磷化集团是国企还是央企 我一个手机号注册了两个,另外一个登不上了,怎么办? 结合实际情况,阐述健康教育学的学习在平时生活中有哪些意思? 用生意葱茏造句9 小时候得过肺结核,长大后是结合疤,变成肺癌晚期,发病时间是1... 我发现什么的美 我想做美团打车代理,现在有加盟吗?113 做美团打车司机一个月大约能挣多少啊?474 请问 中国电信手机卡安装快么? 我开了一个蛋糕网店要怎么做好推广 我开了一个蛋糕网店要怎么做好推广?5 麦趣蛋糕网到底怎么样?我想订个蛋糕,又不知道怎么样?1 什么电影或者电视剧里的? 在《搞笑一家人》中李允浩穿的一个白色半袖外披一件黑沙衣在哪可以找到... 童谣丈夫王冉有前妻吗 24个音节字母 如何选择楼梯的宽度和楼梯的形式并且确定楼梯的数量? 无限恐怖全集txt全集下载 无限轮回之雇佣兵电子书txt全集下载 中国森林资源最丰富的省是4 半夜回家被黑狗跟着有什么预兆吗?132 河北哪个地区的矿产资源最丰富?5 出道即与张国荣合作,曾获国际大奖,如今她人到中年只能演小配角,是谁... 中国哪个省物产资源最丰富2 简政放权的意义及作用6 开车送蛋糕兼职怎么样给我建议1 简政放权的经济意义4 最大一位数是9,最小的两位数是10,它们的和是多少?差是多少...102 葱茏茂盛 造句和清悠悦耳12 最大一位数与最小两位数,它们的和是多少差是多少580 岗前实训有成本吗 美团打车司机一个月大概有多少收入?135 美团打车司机要求有哪些 美团打车司机怎么加入257 美团专车司机加盟407 美团打车司机好还是滴滴27