我不鼓励新手往操作系统这方面走。他们容易分不清哪些是标准函数哪些不是。初学(尤其是自学的话)还是应该打基础。
好多新手初学用的 TC ,他们问的最多的问题就是“为什么有些 TC 的东西别的编译器不支持呀“之类的,然后他们就在 TC 这一棵树上吊死了。
其实对于很多新手,他们有时很多概念和意识还不具备。而且有些概念过早的提及,会使他们产生恐惧、畏惧心理,要不就是会搞混搞乱。比如“标准”这个概念。对于初学者来说,他们也许根本不知道标准是干什么的,有什么意义。这时,如果提的太多,其实就无法理解,或者无暇把精力用在这个方面。
楼主问C89和C99有什么区别。总的来说这两个标准是兼容的,符合C89的代码,一般也符合C99标准。C99标准扩充了一些东西,但都不是核心内容。可以说C语言的精髓和本质C89都包括了,C99里加了一点“雕虫小技”,会了C89之后,听说一下就可以了。如果不是很感兴趣,不用在标准这些方面上下太大功夫。
楼主问继续学C哪个更合适,我觉得1,2之中,2可能好点。呵呵,反正1,2这两本书我都没看过(但都见过,只是翻了翻而已)。我印象时,好像1,2两本书多少也渗透了一点数据结构的知识。
当然继续学数据结构我认为也很合适,楼主应该自己决定。反正数据结构也是打基础的东西,早学早应用。
至于 幸运之星 说的那个 c语言课程设计 可能也见过,但印象不深了。楼主要是这些书都能见到的话,可以自己对比着看看。毕竟评价一本书,是很主观的东西,听别人的一面之词是没什么道理的。不过他说拿下这本书就差不多了,肯定是夸大其词,明显太主观了。很多书都写的很好,而且相当全面。比如以上三本,任何一本楼主如果能吃透的话,也许都可以说差不多了。
不过编程是个无底洞,要走的路还很远,坚持才是王道的选择。不管你用什么辅助书籍起步,坚持下去的话結果都一样。