学习啦 > 知识大全 > 知识百科 > 百科知识 > c语言中什么是指针

c语言中什么是指针

时间: 欧东艳656 分享

c语言中什么是指针

  指针一般指向一个函数或一个变量。在使用一个指针时,一个程序既可以直接使用这个指针所储存的内存地址,又可以使用这个地址里储存的函数的值。

  在计算机语言中,由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。


c语言指针

学习啦在线学习网   1:指针是一个地址,指向的是个类型:

学习啦在线学习网   我们知道,c语言中的类型有int,char,bool(这个不常用),一般我们使用int,char就可以满足一般的类型需求的,如果对于变量的长度过大,就是用long ,float,double,关于各个类型使用的的长度问题,可以使用sizeof(int)或者sizeof(long)来查看各个类型,在系统中的小。

  而指针就是一个8个字节(64系统)。

学习啦在线学习网   2:指针指向的是地址,地址指向的是内容:

  我们需要一个变量,来存储地址,这个变量的值是地址,但是我们可以通过修改变量的值,来不断的改变地址,但是,我们如果需要改变该个地址的值的话,就需要,对地址的值进行修改,而不改变地址。

  int a = 10;

学习啦在线学习网   int *p ;

  p = &a;

  *p =11;

  a=?

  这里我们看到,p 是一个变量,我们使用p来存储变量a的地址,这是,我们使用*p对于这个变量进行赋值,那么a的值最后,是多少呢,结果是11,因为我们使用*p赋值,就相当于a=11,赋值效果一样的。

学习啦在线学习网   3:指针的指针,是面对于指针的变量:

学习啦在线学习网   我们说,指针的指针的时候,就有点不清楚了,到底怎么区分指针和指针的指针呢。

  char *p;

学习啦在线学习网   char **pr;

学习啦在线学习网   pr = &p;

学习啦在线学习网   我们这样看就清楚了一点,char *(*pr); *pr是一个存储的值为指针的变量,pr就是存储上个变量地址的变量。整合起来就是,pr是一个存储的值为指针的地址的变量。

  这样,我们就基本,对于指针有一个直接的了解了。

243457