开发者社区> 问答> 正文

学习C已经已经很长时间了 希望看一些写的比较深一点的书 请推荐

学习C已经已经很长时间了 希望看一些写的比较深一点的书 请推荐

展开
收起
知与谁同 2018-07-22 20:27:30 2048 0
2 条回答
写回答
取消 提交回答
  • 数据结构、算法设计都会了吧
    然后去研究研究复杂性理论
    2019-07-17 22:52:08
    赞同 展开评论 打赏
  • Nothing for nothing.
    1、 C语言和操作系统调用
    重新学C语言,理解指针和内存模型,用C语言实现一下各种经典的算法和数据结构。推荐《计算机程序设计艺术》、《算法导论》和《编程珠玑》。
    学习(麻省理工免费课程)计算机科学和编程导论
    学习(麻省理工免费课程)C语言内存管理
    学习Unix/Linux系统调用(Unix高级环境编程),,了解系统层面的东西。
    用这些系统知识操作一下文件系统,用户(实现一个可以拷贝目录树的小程序)
    用fork/wait/waitpid写一个多进程的程序,用pthread写一个多线程带同步或互斥的程序。多进程多进程购票的程序。
    用signal/kill/raise/alarm/pause/sigprocmask实现一个多进程间的信号量通信的程序。
    学会使用gcc和gdb来编程和调试程序(参看我的《用gdb调试程序》)
    学会使用makefile来编译程序。(参看我的《跟我一起写makefile》)
    IPC和Socket的东西可以放到高级中来实践。
    学习Windows SDK编程(Windows 程序设计 ,MFC程序设计)
    写一个窗口,了解WinMain/WinProcedure,以及Windows的消息机制。
    写一些程序来操作Windows SDK中的资源文件或是各种图形控件,以及作图的编程。
    学习如何使用MSDN查看相关的SDK函数,各种WM_消息以及一些例程。
    这本书中有很多例程,在实践中请不要照抄,试着自己写一个自己的例程。
    不用太多于精通这些东西,因为GUI正在被Web取代,主要是了解一下Windows 图形界面的编程。@virushuo 说:“ 我觉得GUI确实不那么热门了,但充分理解GUI工作原理是很重要的。包括移动设备开发,如果没有基础知识仍然很吃力。或者说移动设备开发必须理解GUI工作,或者在win那边学,或者在mac/iOS上学”。

    摘抄自 酷壳
    2019-07-17 22:52:08
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
大数据可视化与自然之美 立即下载
长安十二时辰背后的技术秘籍 立即下载
互联网思维下的MOOC课程实践 立即下载