标题:如何调用外部函数
只看楼主
邹特强
Rank: 2
等 级:论坛游民
帖 子:123
专家分:85
注 册:2016-9-21
结帖率:85.71%
已结贴  问题点数:15 回复次数:8 
如何调用外部函数
一般函数不加上static 即默认认为是可供其他文件调用的(即extern),那么在其他文件调用在别的文件已经定义的函数只要加上extern+声明就可以,至少书上示例是这样说的。但我实践了下发现不可以,编译时系统提示undefined,我想请教下为什么,难道不是这样调用的吗?
搜索更多相关主题的帖子: undefined 
2017-02-20 16:41
纯帅de肥猪
Rank: 2
等 级:论坛游民
威 望:3
帖 子:9
专家分:10
注 册:2016-3-4
得分:4 
可以添加一个.h的头文件,在文件上申明你的函数,然后在其他文件上使用#include“xxxxx.h”将这个头文件包含进去,就可以调用那个函数了
2017-02-20 16:55
邹特强
Rank: 2
等 级:论坛游民
帖 子:123
专家分:85
注 册:2016-9-21
得分:0 
回复 2楼 纯帅de肥猪
我知道这个方法,但我想用extern这个方法

............
2017-02-20 19:41
不想被发现
Rank: 2
等 级:论坛游民
帖 子:7
专家分:17
注 册:2017-2-7
得分:4 
  if((fp=fopen("du.txt","r"))==NULL)
    {
        printf("can not open this file,press any key to exit...");
        printf("\n文件du.txt不存在!");
        getch();
        exit(0);
    }
    for(;!feof(fp);)  //从du.txt中读取数字
    {
        fscanf(fp,"%1d%1d%1d",&a,&b,&x);
        n[0][(a-1)*9+b-1] = x;
        n[1][(a-1)*9+b-1] = 1;
        //printf("%3d",x);                              
    }
    fclose(fp);      //关闭txt文件



这是解数独的代,这一部分就是在调用储存在TXT里的文件
2017-02-21 22:21
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:4 
有可能没找到相关的dll文件
2017-02-21 22:28
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:4 
怎么个"外部"  是LIB呢。还是DLL呢。还是纯文本呢

DO IT YOURSELF !
2017-02-21 22:53
邹特强
Rank: 2
等 级:论坛游民
帖 子:123
专家分:85
注 册:2016-9-21
得分:0 
回复 6楼 wp231957
额,看不懂你说的,就是在别的文件自己定义的函数,用extern 加函数名调用

............
2017-02-27 20:49
三多兄
Rank: 2
等 级:论坛游民
帖 子:6
专家分:25
注 册:2016-10-23
得分:0 
自己新建一个.h文件,将extern function();添加在里面,用到时只要添加相应的头文件即可
2017-03-01 20:13
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
以下是引用三多兄在2017-3-1 20:13:20的发言:

自己新建一个.h文件,将extern function();添加在里面,用到时只要添加相应的头文件即可
一般来说  点h文件 仅仅是用来声明函数  而实现则是放在库里

DO IT YOURSELF !
2017-03-01 21:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474372-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.411375 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved