我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: [求助]关于外部函数的调用 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

engutou





性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1624
威望: 1
浮云: 1118
在线等级:
注册时间: 2004-11-28
最后登陆: 2008-03-10

5come5帮你背单词 [ surgery /'sə:d3əri/ n. 外科,外科手术,手术室,诊所 ]


[求助]关于外部函数的调用

rt
调用一个存储在另一个文件中的外部函数是,老是通不过
代码:
add.c文件的代码:
//---------------------------------
extern add(int a,int b)
{
  int c;
  c=a+b;
  getch();
}

//---------------------------------


main.c的代码:
//---------------------------------
#include "stdio.h"

void main()
{
  extern add(int a,int b);
  int x,y;
  x=3;
  y=5;
  printf("x+y=%d",add(x,y));
  getch();
}

//---------------------------------
将两个文件放在同一个目录下的
编译main.c时就说找不到模块‘_add’
什么原因呢?在调用外部函数时有什么注意的呢?
谢谢!!!
顶端 Posted: 2006-10-13 09:15 | [楼 主]
朱颜华发



性别: 保密 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1211
威望: 0
浮云: 1105
在线等级:
注册时间: 2006-04-16
最后登陆: 2007-08-07

5come5帮你背单词 [ administration /ədminis'treiən/ n. 管理,经营,行政机关 ]


开始的时候子函数不用extern声明,用int
顶端 Posted: 2006-10-13 09:40 | [1 楼]
朱颜华发



性别: 保密 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1211
威望: 0
浮云: 1105
在线等级:
注册时间: 2006-04-16
最后登陆: 2007-08-07

5come5帮你背单词 [ overwhelming /əuvə'hwelmiŋ/ a. 势不可挡的,压倒的 ]


另外最好设置返回值
顶端 Posted: 2006-10-13 09:40 | [2 楼]
engutou





性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1624
威望: 1
浮云: 1118
在线等级:
注册时间: 2004-11-28
最后登陆: 2008-03-10

5come5帮你背单词 [ forgive /fə'giv/ vt. 原谅,免除(债务等 ]


将代码改为这样:
add.cpp:
int add(int a,int b)
{
  int c;
  c=a+b;
  return(c);
}

main.cpp:

#include "stdio.h"

void main()
{
  extern int add(int a,int b);
  int x,y,z;
  x=3;
  y=5;
  z=add(x,y);
  printf("z=%d",z);
}

在VC6.0中间一个工程,将这两个文件加入到这个工程中,但是一编译就不动了,为何呢?
顶端 Posted: 2006-10-13 12:32 | [3 楼]
engutou





性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1624
威望: 1
浮云: 1118
在线等级:
注册时间: 2004-11-28
最后登陆: 2008-03-10

5come5帮你背单词 [ summit /'sΛmit/ n. 顶点,极点,颠峰,高峰,最高级会议 ]


用TC事了一下
成了
顶端 Posted: 2006-10-13 12:51 | [4 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.007921(s) query 5, Time now is:11-24 05:20, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号