一个老将Java程序员应该在哪里开始以掌握C?

Where should a veteran C programmer start in order to master Java?的风格,我问你这个相反的问题.我在Java和编程方面有很多经验,但是我想拿起一些C(对于一些我对黑客感兴趣的项目).有没有一个快速和肮脏”的指南针对以前的CS背景的人?我更喜欢免费的在线资源,但赞赏任何建议.

解决方法

很久以前,Joel Spolsky宣布C编程对于 all software developers来说至关重要.在那篇文章中,他引用了 Kernighan and Ritchie的书,这本书是被接受的所有时间的经典C书.然而,在使用这本书的C程序设计中,这对于休闲学生来说是一个拖累.

也就是说,如果你已经有Java经验,那不是你.

即使如此,这本书也值得一读.如果没有别的,我会在图书馆寻找.

This tutorial有点过时(特别是与ANSI C相比),但是如果您正在寻找最快的语法刷新,这并不可怕.

给定一些基本的语法(这将非常熟悉),您应该可以直接进入C libraries.这就是您将需要的大部分实际功能.我想你会发现,“掌握”C所需的大部分材料实际上将在那些支持的库中.

为了完整性,如果您需要实际的编译器:

在我的日常工作中,我的开发环境分为Linux(Fedora 14)和Windows 7之间.在这两种情况下,我需要编写C代码的时候使用gcc.虽然gcc是Fedora安装中的可接受标准,但在Windows端,您将需要MinGWCygwin,其中任何一个可以为您提供gcc.

如果我仍在教C程序设计,我会推荐一些上述的高级自导向学生的组合.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...