今天学习的C语言内容小结
对于C语言和数据结构相比,就比较上手多了,所以现在还是加紧花多点时间在数据结构上,加上昨晚哥给说的那个《数据结构与算法分析》,今天有去图书馆看了,其中的内容是跟算法导论很相似的,却比较容易理解和基础些,所以觉得挺好的,今天晚上就先不做总结了,还是回到C的学习上来。Ok~说一下今天学习的C语言内容
第一, C的预处理器
1.C语言通过预处理器提供了一些语言功能。从概念上讲,预处理器是翻译过程中单独执行的第一个步骤。两个最常用的指令是#include(文件包含指令)和#define(宏定义指令)。
源文件的开始处理通常都会有多个#include指令,它们用以包含常见的#define语句和extern声明,或以头文件中访问库函数的函数原型声明,比如<stdio.h>
宏定义形式:#define 名字 替换文本
好了这两个就说到这里,因为并不难理解哈~~
2.条件包含
#if语句对其中的常量整型表达式进行求职时,若该表达式的值不等于0,则包含其后的各行,直到遇到#endif,#elif或#else语句为止。这个指令还是有很多东西学的,包括它要遵循的规则,比如在#if语句中可以使用表达式defined(名字),该表达式的值遵循下列规则:当名字已经定义时,其值为1:否则,其值为0。其他的就不多说了,都是概念性的东西了~~
哈哈~~接下来就到相隔已久的指针和数组这章了,这一张很重要,对我来说也是重点难点的一章,以前学的最容易忘记也是它,NND,所以这次必须征服它,不过花的时间也少不了了,那好吧,说说今天所学到它的一些内容做个小结吧~~时间关系,这里说的和看的并不能完全同步了啦啦~~~
3.第五章,指针与数组
首先二话不说先记住这句话:指针就是一种保存变量地址的变量!
在C语言中,指针的使用是非常广泛的哦,原因之一就是指针常常是表达某个计算的唯一途径,另一个原因是,同其他的方法比较起来,使用指针通常生成更高效,更紧凑的代码!!
(1) 指针与地址
在说这个之前我得用一个图说明一下计算机内存是如何组织的:
语句 p = &a;将把c的地址赋值给变量p,我们就说p为“指向”c的指针。这里的地址运算符&只能应用于内存中的对象,就是变量与数组元素。它不能作用于表达式,常量或者register类型的变量!!!!记住啦啊
通常的机器都有一系列连续编号或编址的存储单元,通过这些存储单元可以单个进行操纵,也可以以连续成组的方式操纵。
指针是能够存放一个地址的一组存储单元。一元运算符*是间接寻址或者间接引用运算符,当它作用于指针时,将访问指针所指向的对象咯~~下边的小代码很清楚说明如何声明指针以及运用&和*(X,Y是整数,ip是指向int类型的指针,,嘻嘻不用说了吧,看下面。。。)
int X=1, y=2 ,z=[10];
int *ip; /* ip is a pointer to int */
ip = &x ; /* ip now pointer to x */
y= *ip ; /* y is now 1 */
ip=0; /* x is now 0 */
ip=&z[0] /* ip now pointer to z[0] */
以上的一段小代码很明了的说清楚了指针,运算符&和*,简短却精练哦~~~
哇~~没写多久时间就到九点了啊啊~~~~~~~~总结就先到这里了吧,,,还有若干没说呢。。。啊啊 写也要时间呀,不过收获和体会就是一个质的飞跃哦~~不写的话你只能想到你今天学了点什么东东 却总不能转化成语言表达出来,然而写下总结呢,他就不一样了哦,那就是你能想到你学了什么然后可以用字的语言表达出来,(吸收的问题!)否则你就是水壶里的饺子------倒不出来!!
还好了,按照这个做法持续下去吧,你会成功的,明天加油!!!!