C语言:多文件程序问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 07:52:10
b1.cpp:
#include<stdio.h>
int A=3;
int print(int);
main()
{
int b;
b=A;
printf("%d\n",b);
b=print(b);
printf("%d\n",b);
}

b2.cpp:
extern A;
int print(int b)
{
b=A*A;
return b;
}
在b1.cpp编译,编译的时候没问题,但是执行的时候出错了:
Linking...
b1.obj : error LNK2001: unresolved external symbol "int __cdecl print(int)" (?print@@YAHH@Z)
Debug/b1.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.

似乎b2.cpp并没有被执行,请问该怎么办?

print改个名字这个很有可能会出问题的
在b1里头文件添上include"b2.cpp"如果有b2.h的话要写b2.h

编译命令(VC++编译器):

CL b1.cpp b2.cpp

或:
CL b1.cpp -c
CL b2.cpp -c
CL b1.obj b2.obj