C标准库是静态库还是动态库?

时间:2011-10-28 08:54:04

标签: c

C标准库函数(ex.printf,scanf)是否被视为静态库函数或动态库函数?

2 个答案:

答案 0 :(得分:5)

这取决于您如何链接您的程序。你可以双向前进。在VS上,您可以指定/MT(静态)或/MD(动态)。在gcc上,您可以指定-static-libgcc标志以将程序与静态库链接。

有关gcc标志的详细信息,请参阅http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html,有关VS的http://msdn.microsoft.com/en-us/library/abx4dbyh(v=vs.80).aspx请参阅。

答案 1 :(得分:2)

你真的不在乎。

编译器甚至可以专门处理一些标准函数,只要它根据标准定义的那样执行。

有时候GCC会做这样的事情,例如它可能会优化对memset的调用来循环...

如果您的问题是如何链接您的程序foo,那么在GNU / Linux上,命令ldd foo会回答这个问题。

干杯。