作者coolmark (NNN )
看板EE_DSnP
标题[问题] undefined reference
时间Sun Jun 1 13:10:40 2008
请问一下我在试着要用aiger.c里的function时
自己先在那里写了一个testprint() (回传一个数字而已)
接着我在cirInterface.cpp里写了如下的
extern "C"
int testprint();
struct aiger;
int
aigToCir (const char *fileName){
int res = 0;
cout<<"YAYA"<<testprint();
return res;
}
compile会过,而且执行cirr hh.aig的确会print出testprint回传的数字
但是!!!当我把int testprint();和struct aiger;这两行上下对掉时
compile便出现undefined reference to 'testprint()' 出错在cout<<"YAYA"...那一行
请问会甚麽会这样呢?
加了一个struct aiger;怎会影响到testprint() ???谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.234
1F:推 timrau:因为缺少大括号,extern "C"的效力仅限於int testprint(); 06/01 13:13
2F:→ timrau:如果你两行对调的话 int testprint()就没有extern "C"加持 06/01 13:13
3F:→ timrau:它就会尝试用C++的方式link testprint() 导致找不到 06/01 13:14
4F:→ coolmark:yayaya~~~thx a lot ! 06/01 13:34