xcode 中想看某一个来自 C 标准类库里某个方法的实现,按 mac 键(不知道这个按键怎么打)+左键点击方法名。却显示一个“?”,请问是还需要做什么配置吗?谢谢!
1
congeec 2016-06-03 14:52:28 +08:00
1. C 里面没有类,那是标准库。 C++才有类库
2. 你所调用的 C 代码一般是动态链接到 libc 的,你只能看到头文件里的函数声明,看不到实现。 OS X 用的 libc 在这里 https://opensource.apple.com/source/Libc/Libc-1082.20.4/。值得一提的是 OS X 底层基于 FreeBSD ,你也可以看未修改过的 FreeBSD 的 libc 代码 https://github.com/freebsd/freebsd/tree/master/lib/libc 。 |
3
paradoxs 2016-06-03 15:10:38 +08:00
在 Xcode 里面是看不到的, 闭源.
只能通过别的方法看. |
4
congeec 2016-06-03 15:17:21 +08:00
@hackingwu 你看到的只是头文件,头文件里是不会有函数实现的。不信你在 Ubuntu 下用 Clion 看 printf 的实现。回去好好补补啥叫声明啥叫定义吧。
|
5
misaka19000 2016-06-03 15:17:47 +08:00
@congeec 请问标准库实现一般是放在什么地方的?
|
6
congeec 2016-06-03 15:25:26 +08:00
@misaka19000
C 标准库辣么多。。。。有 glibc, msvc, bsd libc...... 先找到你在用什么版本的 libc ,然后上网搜源码就是啦 一般操作系统是不会提供源码的,提供的都是二进制包。 |
7
hackingwu OP 不要动不动就会补一补,弄得自己比别人懂很多一样,我现在不是问怎么找源码,我是问在 xcode 里怎么 [方便] 地找到某一变量、方法的定义或实现,即使是头文件的定义也好啊。很多 IDE 都有提供这种功能。
|
8
janxin 2016-06-03 17:16:11 +08:00
LZ 你需要的快捷键是⌃⌘J
|
9
wlee1991 2016-06-03 17:16:39 +08:00
这个问题我想了好久。不知道有没有开源的工具,把标准源代码管理起来,方便查阅。
|
10
LMkillme 2016-06-03 17:17:51 +08:00 1
@hackingwu 你自己说了是按 command + 鼠标左键参看方法,然后问怎么查看 c 方法,@congeec 告诉你了 Xcode 只能查看到 c 标准库的声明。现在倒回来说别人喷你,你只是问怎么 Xcode 查看方法?啧啧,还真玻璃心,倒打一耙。
|
11
zhanglp888 2016-06-03 17:35:14 +08:00
在 xcode 里,只是看到声明就 ok 了,了解传什么参数,返回什么就行了,没想过去看它里面的实现。
如果想看实现的话,单纯去网上找 https://opensource.apple.com/source/Libc/ 类似的看就行了 在 xcode 里看的目的是什么? |
13
hitmanx 2016-06-03 17:41:12 +08:00
如果要看头文件的话, linux 一般是放在 /usr/include 下面的, shared library\static library 一般是在 /usr/lib 下,不太清楚 mac 下是不是类似的地址。原则上 ide 一般都可以添加自定义代码查找的路径。不过比较奇怪的是像 libc 的这些头文件应该都已经添加在默认的路径里,要不然它 include 的时候会找不到才对,这就解释不了为什么它不能 indexing 了
|
14
wohenyingyu01 2016-06-03 17:42:35 +08:00 via iPhone
正常情况就是看到头文件,比如 strcpy 我都能看到不需要任何配置,楼主看不到要不就是拼错了,要不就是没有 import ,或者 xcode 坏了
|