我想知道我可以在C库中调用多少函数,例如Gnu C库?或大约?
答案 0 :(得分:11)
如果您使用的是操作系统等unix,则可以使用nm
实用程序,gnu binutils的一部分。在我的cygwin环境中,nm
列出了文本部分中定义的1570个符号。
% nm -C /usr/lib/libc.a | grep -w T | wc -l
1570
我们排除_
变体
% nm -C /usr/lib/libc.a | grep -w T | grep -v _ | wc -l
751
如果您使用的是Windows,请尝试dumpbin实用程序。
% dumpbin /exports msvcr110.dll
-C
命令中的 nm
对符号名称进行解组。我不知道如何让dumpbin
打印原始符号名称。如果有人知道怎么做,请建议。
某些功能可能在另一个目标文件中定义 - 比如用于数学的libm,用于网络服务的libnsl等。当然,还要查看库文档/源代码。