c语言|c语言 指针 pdf,深入理解C语言指针.PDF

深入理解C语言指针.PDF
深入理解C语言指针
常州轻工职业技术学院信息系 丁 辉
摘 要:指针是c语言的精华和核心部分,充分体现了c语言的灵活性,增强了c语言的功能。本文从指针的定义、指针
的功能及 由于指针的使用带来的安全性等方面深入地分析 了c语言的指针 。
关键词 :C语 言;指针 ;安全
在计算机中,所有的数据及程序都是存放在存储器中的。一般把存储 {intk,h=8,p.
器中的—个字节空间称为—个 内存单元,为了正确地访问这些内存单元 p=&h;
k--p;
必须为每个内存单元编上号 ,根据—个内存单元的编号即可准确地找到该
fi(“%d’% ”.p1k
内存单元,内存单元的编号叫做地址 。根据内存单元的地址就可以找到所 }
需的内存单元,通常也把这个地址称为指针。定义指针的 目的是为了通过 执行时输出结果如下:
指针去访问内存单元。 -82,一82(此结果是不确定的)
在c语言中,允许用—个变量来存放指针,这种变量称为指针变量。 同样对于这样的使用 ,TurboC 2.0编译系统也不会提示任何错误
因此 ,—个指针变量的值就是某个内存单元的地址或称为某 内存单元的指 和警告 ,但结果没有意义。
针。注意内存单元的指针和内存单元的内容是两个不同的概念。既然指针 c.指针变量可以赋空值,但不能不赋值,即:
变量的值是—个地址 ,那么这个地址不仅可以是变量的地址 ,也可以是其 p=NULL;可以,但如下的程序
它数据结构的地址,如数组 、函数种等。数组或函数都是连续存放的,通 mdnO
过访问指针变量取得了数组或函数的首地址 ,也就找到了该数组或函数。 (intp;
这样一来,凡是出现数组,函数的地方都可以用—个指针变量来表示,只 *P-~-56;
要该指针变量中赋予数组或函数的首地址即可。这样做,将会使程序的概
}
念十分清楚 ,程序本身也精练 ,高效。在c语言中,一种数据类型或数据
虽然TurboC20编译系统不会提示任何错误和警告.但是这样使用
结构往往都 占有一组连续的内存单元。
是很危险的,因为P的值是无法预料 的,有可能修改 了一个在用单元的
1 指针变量的定义 值。对于这样的使用,用户需要特别注意。
其一般形式为 :类型说明符 +变量名;
指针变量同普通变量一样,使用之前不仅要定义说明,而且必须赋
对指针变量的类型说明包括+内容: 予具体的值。未经赋值的指针变量不能使用,否则将造成系统混乱,甚至
(1浦 针类型说明,即定义变量为一个指针变量.其标志是变量名前
死机。指针变量的赋值只能赋予地址,决不能赋予任何其它数据 ,否则将
【c语言|c语言 指针 pdf,深入理解C语言指针.PDF】的 “+”;

    推荐阅读