究竟c/c++的link的原理是什么?哪位大哥能详细讲解一下。
比方说有a,b文件:
#############
//a.h
int a_func();
#############
#############
//a.cpp#include "a.h"
#include "b.h"
int a_func(){
  b_func();
}
#############
###############//b.h
int b_func();
################
################
//b.cpp
#include "b.h"
int b_func(){
 return 1;
}
##############
分别编译后是a.obj,b.obj
那么link作的工作具体是怎样的?
obj的格式是怎样的?
link后的exe文件布局又是怎样的?
我关心的是各个函数的地址是怎样被调用者知道的.
多谢。