V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
algas
V2EX  ›  C

作为非专业计算机人员,我想在 C 语言更进一步~

  •  1
     
  •   algas · 2015-04-20 17:32:36 +08:00 · 1588 次点击
    这是一个创建于 3534 天前的主题,其中的信息可能已经有所发展或是发生改变。

    当我发现V2的时候就已经过了问C语言如何入门的问题了...
    最近两三年我一直在用C语言写一些短小的计算模拟的程序,虽然基本不会用typdef,但是也能流畅的写出诸如“寻找最短路径”,“寻找图中各种规模的完全子图(clique)”之类的问题。

    最近对未来有些迷茫,我想毕业以后没准真会选择作一个程序员。
    所以就想请教一下各位专业人士,接下来要怎样提高?

    13 条回复    2015-04-21 09:36:58 +08:00
    inevermore
        1
    inevermore  
       2015-04-20 17:39:09 +08:00
    既然能写最短路径,为啥不会typedef呢。
    Phoinikas
        2
    Phoinikas  
       2015-04-20 17:48:45 +08:00
    据我这个同样非专业人员所知,还是得多看数据结构和算法,C语言大概也就看看你指针理解得如何
    way2exluren
        3
    way2exluren  
       2015-04-20 17:51:08 +08:00
    你需要看操作系统方面的知识。
    《深入理解计算机系统》
    fliar
        4
    fliar  
       2015-04-20 17:59:52 +08:00
    typedef只是簡化,技巧層面的東西
    sunjourney
        5
    sunjourney  
       2015-04-20 18:12:05 +08:00
    《C陷阱与缺陷》
    caiych
        6
    caiych  
       2015-04-20 18:12:34 +08:00
    @inevermore 就是语言级别的各种可以不常用的语法吧…
    说起typedef我每次都要来回试一下到底哪个在前…
    inevermore
        7
    inevermore  
       2015-04-20 18:23:10 +08:00
    @caiych 你记住typedef简化结构体,就能记住那个是简化后的定义了吧。

    另外,上面的人给你推荐了一些基础课程的书,我建议你去网易云课堂上修计算机专业的课程。C语言和操作系统关联太大。
    Valyrian
        8
    Valyrian  
       2015-04-20 18:54:31 +08:00
    C的功能比现代语言少很多,可能不是最好用的语言,但我觉得是最容易深入理解的语言。C很原始,运作的背后其实并没有太多复杂的东西。说白了,C语言的原理就是把每个操作翻译成汇编的一个(或多个)操作。相比之下,Java,Python运行的原理就复杂很多(不过我也没学过…)

    @way2exluren 同意,我也推荐这本书
    algas
        9
    algas  
    OP
       2015-04-20 20:12:36 +08:00
    @inevermore 因为编辑器不会高亮新的名字,所以习惯用struct定义变量
    algas
        10
    algas  
    OP
       2015-04-20 20:28:27 +08:00
    @Phoinikas
    @sunjourney
    @fliar 这些倒是知道,算法导论什么的也看过七七八八,so...
    algas
        11
    algas  
    OP
       2015-04-20 20:34:19 +08:00
    @Valyrian
    @way2exluren 等我把这本书看的七七八八的时候,我就再把这个帖子挖出来...
    cheng007
        12
    cheng007  
       2015-04-21 09:35:29 +08:00
    C语言本身很简单啦,你要深入呢,需要在其他地方扩展知识,提高对c语言的认识
    1.操作系统
    2.汇编
    3.数据结构(算法导论之类的)
    cheng007
        13
    cheng007  
       2015-04-21 09:36:58 +08:00
    作为非科班出身的程序员,选择c作为主力开发语言并不是太好的选择。
    python, js, lua, erlang都是可以尝试的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   876 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:41 · PVG 05:41 · LAX 13:41 · JFK 16:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.