我在1.c文件中写了
#include<stdio.h>
extern void enter(char str[ ]);
main()
{
char str[30];
enter(str);
printf("%s",str);
}
在2.c中写了
void enter(char str[ ])
{
gets(str);
} 为什么1.c不能调用2.c中国的enter呢?
.o文件如何加?#include“2.o"?
追答你是在WINDOWS下吗?如果是windows就用CFREE这个编译器。
微软VS会把编译过程对你隐藏,没什么好处。
编译过程
1.c->1.o
2.c->2.o ->a.exe
n.c->n.o
.o文件是生成的中间文件你那边没有调用2.c的函数说明链接过程没有把2.o加入进去
那如何改动呢?编译的时候是没错的,就在链接的时候显示错误,
追答你是用的哪个IDE ?我很久没用集成IDE了。
2.h? 怎么创建这个2.h?新手。不懂。。
追答跟创建2.c一个道理,实在不行就创建一个txt文件 改为2.h
Visual C++ 6.0
追答你确认两个c文件都在vc工程里面吗?没有被标记为排除不编译连接?你说不能调用那是出了什么错误信息呢?
追问错误信息是Debug/1.exe : fatal error LNK1120: 1 unresolved externals