Static函数如何在内部映射?

时间:2014-08-28 17:24:30

标签: c static

静态函数以什么方式与编译器视图中的普通函数不同?我们都知道静态函数是文件的本地函数,但是编译器如何使这个文件更具安全性?它是否在编译期间对.o文件中的任何限制做了什么?

1 个答案:

答案 0 :(得分:4)

.o文件中有很多内容。您可以通过运行objdump -x file.o来查看它们。

但我们感兴趣的作品是:

  • 代码。这里写了.c文件中所有函数的代码。
  • 导出表。这里有导出函数的名称(以及变量)以及代码中的位置。

静态函数根本不会在导出表中添加条目。