Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何深入学习C语言?

如何深入学习C语言?

作者头像
程序员互动联盟
发布于 2018-03-15 07:59:43
发布于 2018-03-15 07:59:43
2.1K0
举报
疑惑一

遇见编译错误了咋办?

经常见有小伙伴,呼呼的把一大段的编译错误呈现在群里,然后问这是啥原因,其实解决编译的办法还是挺多,现在重点说下编译错误是怎么出来的,基本上编程语言分为两种编译型和解释型语言,编译型的语言会在程序执行之前先编译成二进制的文件,那么解释性的语言不需要这么办,直接边解释边执行,效率上面稍微低点,常见的c、c++都是编译型语言,java属于解释性语言,可能小伙伴有疑问了,不是java也是需要编译的嘛,其实准确来说编译成了字节码,还需要jvm进一步转化成二进制文件,不是编译型的语言,所以java的执行效率并不高。常见的编译错误一般都是编译器编译源代码报出来的错误,有兴趣的童鞋可以去看看编译原理,里面详细的介绍了编译是怎么一回事,那么出现了编译错误了到底如何解决那?其实报错的地方就是给你打出的提示,很多小伙伴见到错误多了就慌了,不知道该怎么办了,第一种解决办法就是根据错误代码的提示,抽象出解决方案。第二种解决方法,将错误代码的关键部分直接复制到百度或者谷歌上面搜索看看别人的解决方案,一般前两种情况能解决掉百分90的错误,还是不行的情况下就可以请教高手帮你分析下,而且对于常见的错误,最好自己有个错误集合记录本防止下次再出现类似的问题。

疑惑二

学编程需要学好汇编嘛?

在群里很多人,都觉得汇编语言需要学好,其实汇编语言在现在语言的分量越来越少了,因为语言是在向前发展的,编程是向着越来越容易的角度出发,而不是越做做难的角度,汇编作为和机器直接打交道的语言,不能说不重要但是大行其道的时代已经过了,算是老老实实做个后世语言的奠基者,更符合他本身的定位,但是汇编在有些行业还是用的较多,特别是底层芯片的开发,以及针对硬件加速的时候汇编还是有施展的空间,反编译一些数据获取也需要汇编的知识,特别是一些病毒的分析,以及底层库的分析有了汇编知识分析起来还是比较快的,而且了解了汇编对于分析一些深层次的系统bug还是很有好处的,很多架构师还是喜欢拿汇编来分析一些底层的问题,动不动整出一些汇编让你云里雾里,可能真是对汇编情有独钟。记得上学的时候,有个汇编老师,讲到汇编如同吃了鸡血一般,那个喜欢就连我们一些不怎么喜欢的,也深有感触,那就那个时候对汇编有了最初的认识,对于刚学编程的小伙伴是没有必要全力去学这块的,除非专业或者职业的方向的确需要,了解一些原理对透彻理解程序有极大的好处。输入关键字汇编获取相关的学习资料,不懂得可以继续后台问。

疑惑三

如何深入学习c语言?

其实在之前的学习中,给大家介绍的更多的是怎么去入门一门语言,其实今天大致给大家说下,怎么深入学习C语言,所谓的深入的学习就是在,掌握一定基础上如何深入的掌握更加的彻底,到了后期主要是项目的锤炼,但是在成为编码高手之前需要学会看代码,可能觉得这个很简单的事情,其实能看懂别人的设计思路以及算法的精妙之处也是一种能力,其实大型的项目,很多代码都是借鉴某个大型的框架,在此基础上精准的定制,大量的代码是已经有的,所以在改装之前需要看懂一些代码,了解设计思想,只有明白大致的设计思想,自己添加的代码才能无缝对接,那么在没有项目的情况下如何提高那,现在不是很多开源的软件可以研究嘛,这一点是很好的突破口,在开源中国的开源社区里面可以弄到很多开源的项目,或者去linux社区去看看,真正的提高语言的熟练程度只有不停的实践,看懂代码然后大量的去写代码。

编程语录:

今日之编程,已是竭力要建立更大更反白痴程序的软件工程师,和正塑造更大更优质白痴的现实世界之间的比赛。目前来看,现实世界赢了。—— Rick Cook

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员互动联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如何用三个月搞定C语言
C语言上个世纪七十年代诞生至今,已经度过了40多个春秋,在此期间经历多次的版本的更迭,目前市面上绝大部分语言的底层实现都是基于C语言,随着C语言之父的逝去,C语言的生命力还是依旧那么强势,绝大部分程序爱好者还是选择C语言作为入门语言。 C语言作为入门语言的几个优点 (1) C语言历史最为悠久,目前市面上几乎所有的编程语言的底层都用C作为基础,所以从C开始对于后期软件框架的理解,还是存在极大的好处。 (2).C语言是除了汇编语言之外最靠低底层的语言在执行效率上有着无可比拟的优势,特别是服务端或者大型程序的执行
程序员互动联盟
2018/03/14
9580
如何用三个月搞定C语言
入手一门编程语言,一起初识Python
小伙伴们,大家好,感谢大家一直关注老刘的网络课程。老刘将不遗余力为小伙伴们提供自己的编程干货,同时结合历年的编程经验或多或少讲解行业内有关的动态,欢迎有志的小伙伴一起加入学习沟通,也可以加老刘微信selidev ,老刘愿与志同道合的小伙伴结识为一生好友!
刘金玉编程
2019/08/02
5290
为什么C语言诡异离奇、缺陷重重,却获得了巨大的成功?
已经使用了C语言十几年了,今天还在写C语言代码,C语言算是很多编程语言祖师爷了,已经取得了巨大的成功但还是很多人对于C语言存在很大的偏见,觉得C语言里面很多语法别扭,特别是指针的使用让很多人吃尽了苦头,工作十几年前前后后玩过几种编程语言,c++,java等比较来看还是C语言简单些,C语言的难点整体来看也就那几个
程序员互动联盟
2018/12/24
1.2K0
初入C语言吓破胆?那是你还不懂这些!
很多刚开始学习C语言的小伙伴,对于这样一个熟悉而又陌生的名词,都是显得闻风尚胆。甚至对于程序员这样一个职业的第一印象都是格子衫,谢顶头,大概是这样的...
诸葛青云
2020/03/05
5590
初入C语言吓破胆?那是你还不懂这些!
有效的学习C语言,易懂,趣味,实用的成长之路
学好C语言的秘诀就是1234:“一字真言,两种态度,三个框架,四项注意”。 各位看官,学好C语言,其实只需一个字,那就是“编”。 学习C语言,乃至学习所有的语言,都讲究一个动手--不是动手打人,而是动手编程序。你必须通过编写程序来熟悉知识、理解知识。倘若只学不编,只看别人的程序,自己不动手写,是不能从入门到精通的。要知道,在计算机界,只说不练的人很欠揍。试想一下,你在哪里辛辛苦苦的编程序,他却站在一边,如老板一样喋喋不休,对你提出这项意见,那项思路,甚至畅谈自己编程将会如何如何,好像很牛皮的样子,但就是不编
企鹅号小编
2018/01/30
9340
有效的学习C语言,易懂,趣味,实用的成长之路
【答疑释惑第十四讲】如何学习数据结构?
疑惑一 为什么学习编程前,先要掌握计算机组成原理? 很多的学习编程的小伙伴,特别是上来就学习java的小伙伴,很多对底层语言的实现存在一种莫名的畏惧感,老是觉得学的不踏实,小编推荐学习任何基础编程语言之前先系统的学习下计算机组成原理,因为只有对计算的组成原理有一个大致的认识之后,切入编程语言的学习才能更加的系统,知识体系建立的也会更加完善,在做项目的后期软件的性能以及内存的占用将直接体现软件的稳定性,做系统性能的一般要求对系统有个大概的认知,知识体系越是丰富的小伙伴,解决这类问题越是得心应手,还是应了一句话
程序员互动联盟
2018/03/15
5670
如果编程是一门武功绝学,C语言是葵花宝典还是辟邪剑谱?
武侠小说中,各路侠客绿林好汉都是从基本功开始一招一式学起,掌握了足够多的招式后,加之勤学苦练,量变引起质变,会有一天打开任督二脉顿悟出这些招式背后的哲学逻辑,成为一代宗师。在编程的学习过程中,我们何尝不是从一招一式的函数、语法、特性等学起,掌握了一门编程语言后,再学习另一门语言就会快很多,如同拥有内功后,习得其他武功也会轻松很多。
小林C语言
2020/12/23
8340
如果编程是一门武功绝学,C语言是葵花宝典还是辟邪剑谱?
编程到底难在哪里?
疑惑一:数据结构和算法学的晕乎乎的?怎么破局? 数据结构是算法的基础,原则上不推崇先去学习数据结构,数据结构就是对基础的组合和应用了,在基础语言还不行的情况下,直接来使用可能会存在问题。建议C语言或者C++基础打的差不多的情况下,切入学习数据结构,没有完成数据结构的学习,编程基本功算是不完善。老码农经常提醒刚入门的小伙伴先学好指针再再去玩数据结构。 通常来说基本学好基础语言部分如何能能吃上饭,学好数据结构能让自己吃的更饱一点。能独立做单元模块了基本上能选择如何吃的更好些了。现在大家经常看到c++或者java
程序员互动联盟
2018/03/16
1K0
想成为一名黑客,需要学点啥?
疑惑一 想成为一名黑客,需要学点啥? 在群里不止一人提到黑客的字眼,更有小伙伴提出如何破解qq之类的,小编觉得更多是黑客在很多人心目中形象高大无比,酷酷的,牛牛的,但是会看到黑客的风光之处,但是背后这群哥们做了多少努力,谁又能看得见,黑客起码是一个合格的程序员,而且是出色的程序员,对知识要求的深度更高,要做很多看似常人做不出来的事情,这需要背后付出多大的努力,大家都知道程序员工作很辛苦,那可以想象一下黑客付出会更多,同时背负道德的骂名,很多小伙伴在某些论坛下载了一个能监测局域网的一些小工具做些小手脚都觉得有
程序员互动联盟
2018/03/15
1.3K0
C语言入门精髓
上篇说到了C语言还是很基础的编程语言,还是值得去学,那么怎么去学?什么人才能学好?为什么学到一半就早早缴械投降了?众多迷雾,众多的困难,怎么破局? 很多对编程感兴趣的小伙伴,找个所谓的高手,问了几个编程入门需要的书,也是拼了,呼呼的买了一堆C语言,C++,java等等,本着多多益善的原理,然后从C开始看,最初几天看的热火朝天,把如何编译C代码,如何打印基本的字符串看的很是仔细,随着难度的增加,越来越觉得吃力,有点寸步难行的赶脚,怎么办啊,网上找点资料看看,看的似懂非懂。然后再坚持看了几节,迷糊的越来越厉害,
程序员互动联盟
2018/03/16
1.4K0
各路大牛的C语言编程建议和技巧,看完感触颇深
我们鼓励在编程时应有清晰的哲学思维,而不是给予硬性规则。我并不希望你们能认可所有的东西,因为它们只是观点,观点会随着时间的变化而变化。可是,如果不是直到现在把它们写在纸上,长久以来这些基于许多经验的观点一直积累在我的头脑中。因此希望这些观点能帮助你们,了解如何规划一个程序的细节。(我还没有看到过一篇讲关于如何规划整个事情的好文章,不过这部分可以是课程的一部分)要是能发现它们的特质,那很好;要是不认同的话,那也很好。但如果能启发你们思考为什么不认同,那样就更好了。在任何情况下,都不应该照搬我所说的方式进行编程;要用你认为最好的编程方式来尝试完成程序。请一以贯之而且毫不留情的这么做。
C语言中文社区
2022/05/30
8660
各路大牛的C语言编程建议和技巧,看完感触颇深
如何成为一个牛逼的C/C++程序员?
这个题目的噱头太大,要真的写起来, 足够写一本书了。 老九君分享一些经验,希望能让初学的小伙伴少走弯路。 每个人的情况不一样,所以下面的描述可能并不适合每一个看到这篇文章的人。 一、C/C++语言 如果你的基础很差, 建议不要一开始就学C++语言,从C开始学起,对程序有个初步的认识,循序渐进。C语言的书可以先买一本 C primer plus,把书中的一些例子都通过键盘敲到编译工具里面去,然后单步执行,逐行调试去看各个变量的值。或者自行添加一些printf语句去输出变量的值。这样当你看完一本书后, 你就
老九君
2018/03/06
9310
如何成为一个牛逼的C/C++程序员?
天分不够,能精通C语言嘛?
疑惑一 做C++一年多了,感觉自己基础还是很差,内存管理,指针等等都是一知半解,做项目也是经常犯低级错误,该怎么办? 之前的文章里面可能也多少提到过,c++学起来还有点费劲,就是大家常说的皮厚,其实当初java语言的发明也是对c++语言一种深层次的改进,c++涉及到的语法规则太繁琐,而且加上指针掺杂的确入门之处有很多的难处,上面的问题是一个小伙伴在微信后台提出的一个问题,其实对于只有一年的经验的人来说,上面说的现象基本上是很正常的,只有一年多经验的新手一般项目只是跟着做做测试,验证一些基本的功能之类的,具体
程序员互动联盟
2018/03/15
1K0
最美的C语言程序流体,你会做吗?
想好好学C语言,尽量不要单一的只是看书(尤指谭浩强老师的,这是来自众多社群小伙伴的建议),多动手才是王道。
C语言豆子
2018/07/21
7010
最美的C语言程序流体,你会做吗?
【C语言】开端 C long 概述
        说明🙌由于这是本人第①次写博客文章,如有写的不好还望见谅💕2021.8.17📅
謓泽
2023/10/16
2140
【C语言】开端 C long 概述
Python数据分析学习路线个人总结
数据分析人人都有必要掌握一点,哪怕只是思维也行。下面探讨Python数据分析需要学习的知识范畴,结合自己的经历和理解,总结的学习大纲,有些章节带有解释,有些没有。当然,关于学习范畴,可能每个人的理解都不太一样,以下仅供参考。
double
2019/06/03
1.7K0
如何用6个月搞定C++
提到c++做过项目的人,都会扔下一句,这玩意短期内很难学的很熟练,更不要说弄的精通,没有做过项目的人觉得C++和java差不多啊,就是面向对象一些基本应用,掌握了对象的一些概念,以及一些属性基本上差不多了。其实整体而言c++的里面的泛型编程,以及类模板,模板类等基本概念特别在初级做项目的小伙伴来说,能把程序编译通过简直太难了。 那么为什么要学习c++? C++算是距离C语言比较近的语言,算是比较靠低的语言里面还能展示面向对象,越是年龄大点的程序员越是觉得C++越用越有意思,对开源代码有点研究的或者看过开
程序员互动联盟
2018/03/14
1.7K0
如何用6个月搞定C++
C语言常用的知识没多少之C语言的入门
C语言自1972年问世以来,历经40多年而不衰。现在依旧在机器语言排行榜中排名前三,可见C语言的重要性!C语言既是高级语言,也是少有的面向过程的语言。学习C语言不像其它面向对象语言那样需要理解什么是类、对象、派生、继承、多态等的意思。它更与现实生活中的方方面面相结合。所以学习C语言的过程中可以类比生活中某些问题的解决过程去学习,这样有利于C语言的学习。
用户5935416
2019/08/01
1.9K0
C语言常用的知识没多少之C语言的入门
C加加游戏编程永不过时的语言,原因何在?
想要知道C++到底如何你首先要了解C++的特性。C++既保留了C语言的有效性、灵活性、便于移植等全部精华和特点,又添加了面向对象编程的支持,具有强大的编程功能,可方便地构造出模拟现实问题的实体和操作;编写出的程序具有结构清晰、易于扩充等优良特性,适合于各种应用软件、系统软件的程序设计。用C++编写的程序可读性好,生成的代码质量高,运行效率仅比汇编语言慢10%~20%。 具体如下 是C语言的超集。它既保持了C语言的简洁、高效和接近汇编语言等特点,又克服了C语言的缺点,其编译系统能检查更多的语法错误,因此,
企鹅号小编
2018/02/05
1.9K0
C加加游戏编程永不过时的语言,原因何在?
要想精通C语言,必须先学习汇编吗?
编程语言里面很少有人直接说出精通两个字,特别是一些入行好多年的程序员,从语法来讲C语言相对来讲入门还是比较容易,在高级语言还没有完全展开的年代,C语言算入门比较简单的编程语言了,起码要比语法细节繁杂的C++好太多了,现在很多做应用开发的程序员觉得能写C语言的都是高手,这完全是一种这山看着那山高的心态了,做C语言还觉得高级语言编程模式复杂,现在越来越多的编程入门人员已经不选择C语言作为入门语言觉得太难了,对于面向过程语言开发的C语言为什么让很多人觉得很难?
诸葛青云
2018/09/08
1.7K0
相关推荐
如何用三个月搞定C语言
更多 >
LV.0
这个人很懒,什么都没有留下~
加入讨论
的问答专区 >
1高级总监擅长4个领域
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档