首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请问个函数编译时候链接的有关问题

2013-08-09 
请教个函数编译时候链接的问题?a.cvoid test(int a)int main(){int a 0test(a)return 0}b.c //先编译

请教个函数编译时候链接的问题?
a.c
void test(int a);

int main()
{
    int a  = 0;
    test(a);
    return 0;
}

b.c //先编译成动态库文件
void test(int b, int c)
{
   //do something;
}

这样编译的时候,链接为什么没有报错? linux,gcc 4.1.2 环境。
[解决办法]
动态库中有函数符号,不过至于参数是否匹配,它是不检测的,需要程序员自己维护。
[解决办法]


只会检查基本语法而已,
连编写的头文件都可以编译,源文件也是没有问题的

[解决办法]
有两个可能:
1、老的C是不考虑参数列表的;
2、test是个弱符号链接。

热点排行