• 网站刚刚上线,难免有不足的地方,敬请谅解!欢迎提出宝贵意见!

  •    2年前 (2015-09-19)  入门必备 入门指导 |   抢沙发  267 
    文章评分 1 次,平均分 5.0

    老是又小伙伴在群里说我的代码是按照书上的代码敲的,就是编译不过?想不通呀!目前市面上的一些书都是十来年以前编写的了,你不幸看的还是这些书,错误原因就在这里。

    比如谭浩强的C语言程序设计这个本书都出了N版了,而我们在看很早的版本。时代在发展,在大家都在用vs2015了,C语言最新标准也换成了C11。你说你按照老版本书上的例子敲代码,编译不出错基本上都是幸运的了。

    所以小伙伴们一定要注意了,你买书不要急着去看里面的知识。作者序你一定要看,它是在什么环境下写的,都讲些什么,计算机类的书基本上都会写上适用范围,开发环境等。如果一本书这方面都没有,那他肯定不是一本好书。

    选好一本书,对于学习编程很重要。选网上大家都推荐的,大家说好才是真的好。你也不想我敲个例子都一大堆错误等着吧。真是这个样子你杀人的心都会有的。书本身的问题让人痛绝。但不全是书本自身的问题。上面我们提到的标准也是重要的一环,诚然又好多开源代码在以前的gcc版本是能编译过的,那时候的编程还是如c89,c99。后边的标准越来越严格了。谁都喜欢新东西,搞开发也一样,你说window 10 出来了, 你是不是痒痒的要把window 7 换了。而本身编译工具也是在不断更新。标准差异再所难免。

    C标准到底何也? ANSI C 是由ANSI 制定的C语言标准。常见的编译器都按此标准设计。所以用ANSI C语言标准写的C程序, 各编译器都能识别,编译。这个对于编译器实现很重要,要不然老版本的代码用新的编译器编译又问题。标准在不断规范。所以以前写的代码规范与现行的不一致就会导致编译错误了。重不重要等你写代码维护版本就知道了。

    上面说到的编译器,本身也是又差异的你能说vs的cc能跟gcc一样? 比如C99相对于C89来说增加了很多特性,比如说新的关键字,数据类型,变长数组,国际化特征等等,一般来说,现在的C编译器都能很好的符合C89标准,而C99标准至今还没有很好的普及,比如说微软直到VC2010依然没有符合C99标准。

    说了这么多按照书上的例子敲代码编译出错我们一定要知道,书中的例子是基于那个标准的,我们用的编译器支不支持这个标准。

    关注微信公众平台:程序员互动联盟(coder_online),你可以第一时间获取原创技术文章,和(java/C/C++/Android/Windows/Linux)技术大牛做朋友,在线交流编程经验,获取编程基础知识,解决编程问题。程序员互动联盟,开发人员自己的家。

    为什么按照书上的代码,编译老是出错?

     

    本文原始地址:http://www.coderonline.net/why-the-code-according-to-the-book-compile-error.html

    本站所有文章,除特别注明外,均为本站原创,转载请注明出处来自http://www.coderonline.net/

    否则保留追究法律责任的权利!

    关于

    发表评论

    表情 格式

    暂无评论

    切换注册

    登录

    忘记密码 ?

    切换登录

    注册