【问题标题】:how to check c standard library function source code in eclipse如何在eclipse中查看c标准库函数源代码
【发布时间】:2018-09-26 20:42:49
【问题描述】:

我目前正在学习 c 并且想知道标准库函数是如何实现的,例如

我在fgets 函数上control clicked,它把我带到了stdio.h 头文件中fgets 的函数原型声明。

但我想看看fgets是如何实现的,而不是它的函数原型。反正有没有看到它的内部实现?

【问题讨论】:

  • google 应该能够为您找到一个实现。通常,您使用编译器获得的只是头文件和库文件,而不是源代码。
  • 带有java标准库,如果我右键单击一个函数名,它会直接带我到那个函数的源代码,很方便。有什么和c类似的吗?我知道我可以在网上找到实现,但只是想知道是否有一种方法可以在 IDE 中完成?

标签: c eclipse


【解决方案1】:

一些标准库实现的源代码,如glibc,可在线获取,您可以查找its fgets() code。但是源代码通常不会安装在开发 PC 上,除非您出于某种原因(例如,交叉编译器)构建自己的工具链。事实上,部分源代码通常是用汇编语言编写的。只有编译的目标文件通常安装在开发/目标 PC 上。因此,您的 IDE 无法访问源代码,也无法将其显示给您。微软的 MSVCRT 等其他标准库是专有的,源代码不可用,只有编译的库。当然,你总是可以反汇编它,但输出对你来说可能不是很有用。

一般来说,大多数(不是全部!)C/C++ 程序员将标准库函数视为黑匣子,并依靠良好的参考文档来理解它们的行为。

【讨论】:

  • 嗨 TypelA,你介意我问一下,你对好的 c/c++ 参考文档有什么建议吗?当您想检查某事时,您最常使用哪个参考?
  • @Thor cppreference.com 是迄今为止我最喜欢的参考。它由社区维护,但它是关于 as close to the Standard(s) 的内容,同时仍然可供日常使用。
  • @Thor ...这里是its page on fgets()作为起点。
  • 感谢您的帮助!您的建议将帮助我走很长的路! :)
猜你喜欢
  • 1970-01-01
  • 2018-10-02
  • 1970-01-01
  • 2019-06-16
  • 2010-09-30
  • 2022-01-10
相关资源
最近更新 更多