【C语言重点】C语言中“最难啃的”三大硬骨头,你知道吗?

C语言中的三大硬骨头
1、指针
指针之所以难理解因为指针本身就是一个变量,是一个非常特殊的变量,专门存放地址的变量。
这个地址需要给申请空间才能装东西。而且因为是个变量可以中间赋值。
很多高手喜欢C语言就是因为指针的魅力,中间可以灵活的切换。执行效率超高。但是这也是小白晕菜的地方。
指针是学习绕不过去的知识点
学完C语言,紧着者切换到数据结构和算法,指针是切换的重点。
之真搞不定下一步就很难进行。指针直接对接内存结构。
常见的C语言里指针乱指是指数组越界。根本原因就是内存问题。
在指针这个点由无穷无尽的发挥空间。很多编程的技巧都在此集结。
指针还涉及如何申请释放内存。如果释放不及时就会出现内存泄漏的情况。
指针是高效好用,但必须彻底搞明白。
函数概念,面向过程对象模块的基本单位以及对应各种组合,函数指针,指针函数。一个函数就是一个业务逻辑块,是面向过程。单元模块的最小单元。
在函数的执行过程中形参,实参和如何交换数据,如何将数据传递出去。如何设计一个合理的函数。不单单是解决一个功能。还要看是不是能够复用,避免重复造轮子。
函数指针和指针函数,编码是两个字面意思的互换,实际上含义截然不同。
指针函数就是返回指针的一个函数
函数指针这个主要用在回调函数,通俗的理解指向函数的指针本身就是一个指针变量,只不过在初始化的时候指向了函数,这又回到了指针层面。
2、结构体
想应付考试考试,或者混个毕业证意义不大,但要想从事编程这个行业就很重要。如果不懂,基本上无法构造数据模型。没有一个业务体是完全使用原生数据类型来完成的。
高手一般在设置数据模型时,一般先把头文件中的结构体数据整理出来,然后设计好功能函数的参数以及名字。然后才真正开始写C源码。
从节省空间考虑结构体里面的数据放的顺序并不一样,在内存中占用的空间也不一样。结构体与结构体之间赋值。结构体存在指针那么赋值要特别注意,需要进行深度的赋值。
3、递归
递归一般用于从头到尾统计或者罗列一些数据,可以自己调用自己,而且在使用的时候一定设置好跳出的条件。不然就无休止的进行下去,那样就会成无限死循环。


















