gpt4 book ai didi

c - 确定 C 中库函数使用的空间

转载 作者:行者123 更新时间:2023-11-30 18:01:31 25 4
gpt4 key购买 nike

我有一堆代码需要分析,但我不知道该怎么做。我有一堆代码,到处都在使用我的 IDE 附带的名为 math.h 的头文件中的数学函数。我被要求查看使用了多少空间来包含此内容。具体来说,编译器包括所有库函数或仅包括我们使用的库函数。没有创建目标文件。所以我认为库代码正在被编译成单独的文件。有什么巧妙的方法来解决这个问题吗?我不能只注释掉包含的内容,因为那样代码将无法编译,我也不知道大小,如果我注释掉所有使用数学函数的行,它并不具有真正的代表性。

最佳答案

您可以使用objdump命令查看目标文件中的各个符号及其所需的空间。

请注意,除非您正在进行静态编译,否则库方法通常不会复制到生成的二进制文件中,而只会被引用(并在加载程序时通过动态链接器引入)。

由于 math.h 是标准 C 库的一部分,因此基本上可以保证该库的副本始终位于内存中,因此动态链接的额外内存和空间要求很小。 (在静态链接期间,程序不直接需要的所有符号都将被丢弃,并且数学函数往往不会很大,因此那里的使用也应该相当少)。

关于c - 确定 C 中库函数使用的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9776153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com