从Java角度看C指针和数组的教程

时间:2010-12-04 20:30:45

标签: java c arrays pointers

我目前是大学新生,主修CS。我刚刚完成了我的“计算机程序设计入门”课程。我喜欢它,觉得我学得很好。

几天前,我读过乔尔的The Peril Of Java Schools。 “链接列表?”我想,“那些甚至都不是很难。我们已经完成了一些已经上课的人。”这是正确的,因为在Java中,它们并不那么难。但无论如何,我试着用C语言写一篇。

太难了!

乔尔是对的,我认为...... Java为你处理了许多小小的东西,它真的不那么难。但我决心克服我学校的Java-tude并学习如何在C中写下这个dang链表。

所以我想,有人问,有没有人知道学习C的好(和免费)在线教程,而不是试图提出很多很小的问题?具体来说,学习如何处理指针,以及所有这些符号(&***[]以及它们如何协同工作)我想我想我已经非常精通Java,所以我不需要有关如何编写“Hello,World!”的教程。程序。但是我绝对不准备进入任何超级高级的C或C ++,因为我所知道的只是Java。

任何帮助表示赞赏!

4 个答案:

答案 0 :(得分:6)

答案 1 :(得分:3)

检查并查看您的课程是否需要系统编程。它通常是一个300级的二年级课程,我下学期就读了。它非常重视在Unix中使用C + GCC。

检查您的CS部门库(如果存在)。我拿起了K& R的副本,在冬歇期工作。

答案 2 :(得分:1)

This用于C ++,而不是C;但直到第3.7章左右,才会以对可能的C程序员有用的方式讨论机器级的内容。

答案 3 :(得分:0)

互联网上有许多用于学习指针的指南。这是我用过的http://pweb.netcom.com/~tjensen/ptr/pointers.htm之一。

我也会向你推荐这本书:Hacking, the Art of Exploitation 2nd Ed

这本书不会让你成为“黑客”。除了大量逆向工程/研究二进制代码,试验和错误等之外,其他任何事情都可以做到。但是,它确实向您介绍了如何开始执行这些操作,并从根本上了解C的工作原理,包括指针。它对assembly / C的介绍是我见过的最好的之一,因为它将引导您完成几个C示例以及如何使用命令行调试工具gdb调查正在发生的事情。这样你就可以看到C并看到装配。这包括对指针的基本理解。

本书将作为副作用为您介绍堆栈和堆,数据结构等。简而言之,阅读介绍部分将为您的其余课程带来很多好处。