我的 C 语言学的很水。最近对 Python 底层的东西感兴趣,想看看源码,不过看到那么多的 C 语言代码就头疼。
所以想问问,通过哪些途径,可以快速提升 C 源代码的阅读水平?(若书籍、代码等请列举,谢谢)
所以想问问,通过哪些途径,可以快速提升 C 源代码的阅读水平?(若书籍、代码等请列举,谢谢)

1 zoowii Sep 24, 2016 和 C 语言水平应该关系不大 |
2 xuqd Sep 24, 2016 《 Python 源码剖析 》 |
4 wizardforcel Sep 24, 2016 《 Python 源码剖析 》 CPython 是 C 写的面向对象,如果不刻意去理解还真看不懂。 |
5 uhayate OP @wizardforcel 就是咯。 C 语言水平太菜了,所以需要提升一下。 |
6 ruoyu0088 Sep 24, 2016 有个好的代码阅读软件比较重要。然后就是用 ctypes, cffi 之类的写一些实验代码帮助理解。 |
7 sylecn Sep 24, 2016 如果你对编译器和语言感兴趣,才建议看 python 源码。否则,单纯为了学 C ,不推荐看 CPython 源码。 如果 C 基础不行,建议选一种简单的 scheme 实现开始看,不要上来就看 python 这么复杂而且有历史包袱的语言。 看编译器的实现,需要对语言和编译器技术有一定了解,单单了解 C 的库和语法是远远不够的。所以如果这些有欠缺,先补一下编译器原理之类的,再看源码会比较容易。 如果你只是看部分标准库的实现,那就当我没说。那些内容除了遵循 python 模块规范和使用 python 数据结构,其它都和标准 C 差不太多。看多了就懂了。 |
8 starcraft Sep 24, 2016 via iPhone 和 c 水平没太大关系,因为这是基础中的基础。读 python 源码轻不轻松取决于你整个编译知识体系。你纠结错了关键点。 c 不过关的话,连第一步都没迈出.... |
9 jmp2x Sep 24, 2016 @wizardforcel 最近看了些,确实是,用结构体去实现类对象,结构体的嵌套前置,就是父类,实现的很有意思。 |