输入机构/课程/服务名称

零基础想学好编程!C语言最难啃的 3 块硬骨头,你全吃透了吗

2021-12-16 11:32:23
# IT技术 # IT培训 # IT行业

提到C语言很多初学者都觉得,学到中间就进行不下去了,因为碰到了几个硬骨头死活翻不过去,于是很多人给C语言下结论太难了,太靠近底层了,特别是那几块难啃的骨头,直接理解不了,进行不下去。


今天就来说下,最难啃的三块骨头,看到底是谁?


内存布局


指针公认最难理解的概念,也是让很多初学者选择放弃的直接原因


指针之所以难理解,因为指针本身就是一个变量,是一个非常特殊的变量,专门存放地址的变量,这个地址需要给申请空间才能装东西,而且因为是个变量可以中间赋值,这么一倒腾很多人就开始犯晕了,绕不开玩了。C语言之所以被很多高手所喜欢,就是指针的魅力,中间可以灵活的切换,执行效率超高,这点也是让小白晕菜的地方。


指针是学习绕不过去的知识点,而且学完C语言,下一步紧接着切换到数据结构和算法,指针是切换的重点,指针搞不定下一步进行起来就很难,会让很多人放弃继续学习的勇气。


指针直接对接内存结构,常见的C语言里面的指针乱指,数组越界根本原因就是内存问题。在指针这个点有无穷无尽的发挥空间。很多编程的技巧都在此集结。


指针还涉及如何申请释放内存,如果释放不及时就会出现内存泄露的情况,指针是高效好用,但不彻底搞明白对于有些人来说简直就是噩梦。


广告白酒放了三年多过保质期了!还能继续喝吗? 后悔没有早点知道!

函数概念


函数概念,面向过程对象模块的基本单位,以及对应各种组合,函数指针,指针函数


一个函数就是一个业务逻辑块,是面向过程,单元模块的最小单元,而且在函数的执行过程中,形参,实参如何交换数据,如何将数据传递出去,如何设计一个合理的函数,不单单是解决一个功能,还要看是不是能够复用,避免重复造轮子。


函数指针和指针函数,表面是两个字面意思的互换实际上含义截然不同,指针函数比较好理解,就是返回指针的一个函数,函数指针这个主要用在回调函数,很多人觉得函数都没还搞明白,回调函数更晕菜了。其实可以通俗的理解指向函数的指针,本身是一个指针变量,只不过在初始化的时候指向了函数,这又回到了指针层面。没搞明白指针再次深入的向前走特别难。


结构体,递归


很多在大学学习C语言的,很多课程都没学完,结构体都没学到,因为从章节的安排来看好像,结构体学习放在教材的后半部分了,弄得很多学生觉得结构体不重要,如果只是应付学校的考试,或者就是为了混个毕业证,的确学的意义不大。


如果想从事编程这个行业,对这个概念还不了解,基本上无法构造数据模型,没有一个业务体是完全使用原生数据类型来完成的,很多高手在设计数据模型的时候,一般先把头文件中的结构体数据整理出来。然后设计好功能函数的参数,以及名字,然后才真正开始写c源码。


如果从节省空间考虑结构体里面的数据放的顺序不一样在内存中占用的空间也不一样,结构体与结构体之间赋值,结构体存在指针那么赋值要特别注意,需要进行深度的赋值。


递归一般用于从头到尾统计或者罗列一些数据,在使用的时候很多初学者都觉得别扭,怎么还能自己调用自己?而且在使用的时候,一定设置好跳出的条件,不然无休止的进行下去,真就成无限死循环了。


这三大块硬骨头是学习C语言的绊脚石,下功夫拿掉基本上C语言的大动脉就打通了,那么再去学习别的内容就相对比较简单了。编程学习过程中越是痛苦的时候,学到的东西就会越多,克服过去就会自己的技能,放弃了前面的付出的时间都将清零。越是难学的语言在入门之后,在入门之后越觉得过瘾,而且还容易上瘾。你上瘾了没?


*文章内容和图片均来源于网络,如有侵权,请联系删除。

查看剩余内容
loading
Hi,我是教育宝平台顾问 添加我的微信,在查找或下载资料时,有任何问题,我会随时为您解决~
loading
扫描二维码 添加顾问微信

点赞

收藏

资深学习规划师,免费帮您答疑解惑,定制学习方案
限时免费咨询
喜欢此内容的人还喜欢
  1. 男怕入错行,女怕嫁错郎。IT培训学费2万值得去吗?
    攻略
    # IT培训 # IT技术 # IT技术培训
  2. 未来的时代将不是IT时代,而是DT的时代。”阿里巴巴创始
    就业
    # IT技术 # IT培训 # IT行业
  3. IT是InformationTechnology的缩写,
    科普
    # IT培训 # IT技术 # IT行业
职位/薪酬更多
热门问答 更多
  • IC培训是什么?

    IC培训指的是集成电路(IntegratedCircuit)设计培训,主要涉及集成电路设计、制造和测试等方面的知识和技能。这种培训通常包括电路设计、版图设计、工艺制造、测试验证等内容,旨在培养学员掌握集成电路设计的基本原理、设计方法和实现技术,具备独立进行集成电路设计和开发的能力。

    182****2009182****2009
    1人回答>
  • 工业数字孪生多久可以学会??

    如果已经具备相关专业背景和技能,如自动化、计算机科学或工程等,学习工业数字孪生可能只需要几个月或一年左右的时间。

    一二三四五六七八九十一二三四一二三四五六七八九十一二三四
    1人回答>
  • 数字孪生培训完成后,可以从事哪些工作?

    数字孪生培训完成后,你可以从事的工作范围很广,主要包括但不限于: 数字孪生工程师:这是直接与数字孪生技术相关的工作,主要负责建立数字孪生模型,进行数据分析和模拟等。 数据分析师:数字孪生技术需要大量的数据分析技能,因此数据分析师在数字孪生领域有广阔的就业前景。 模拟建模专家:利用数字孪生技术进行模拟和建模,为其他领域提供决策支持。 智能家居管理:随着物联网的发展,智能家居管理成为了一个热门领域,数字孪生技术可以用于中央管理系统,对安全系统、电视网络、Wi-Fi、冰箱、太阳能、热水器等进行统一管理。 工业设备监控:未来工厂中的每个设备都可能拥有一个数字复制体,可以实时获取设备监控系统的运行数据,进行故障预判和及时维修。 智慧城市管理:无人机群将为城市提供基于图像扫描的城市数字模型,街道、社区、娱乐、商业等各功能模块都将拥有数字模型。 远程操控:通过数字模型,我们可以实现设备的远程操控,例如远程辅助、远程操作、远程紧急命令等。

教育宝IT技术频道
教育宝致力于打造中国最专业的IT技术学习平台,为IT技术学员、教育机构、从业者和上下游搭建连接、互动、交流和赋能平台。