能利用IDE工具更加方便查找C库源代码吗

比如我在IDE浏览C库中floor()的定义,使用转到定义,
clipboard.png
_Check_return_ _ACRTIMP double __cdecl floor(_In_ double _X); 这里我就找不到后面的代码定义了,是我操作错误了吗?

请问:
编译器是如何实现寻找代码的定义的?它是不是只能寻找添加到工程的定义函数,而不能寻找封装的库?
如果要阅读源代码需要自己去根目录找对应头文件阅读吗?

阅读 2.4k
1 个回答
在_Check_return_ ACRTIMP double __cdecl floor(_In double _X); 这里我就找不到后面的代码定义了,是我操作错误了吗?

你找不到是因为没有把C库代码加入到你的IDE工程...

编译器是如何实现寻找代码的定义的

注意区分编辑器(比如你的IDE)和编译器(如gcc)。编辑器找代码定义显然是软件自己的功能,需要你将函数定义的文件加入到你的IDE工程..比如你讲C库文件添加到工程就能找到了

编译器压根不需要找到C库代码的定义,它只需要在链接(ld)时,找到libc.so就行了,libc.so有这些函数的符号。

如果要阅读源代码需要自己去根目录找对应头文件阅读吗?

需要

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题