这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 16.关于指针的总结

共2条 1/1 1 跳转至

16.关于指针的总结

高工
2014-10-29 16:27:18     打赏

指针的数据类型:

                  


  指针运算的小结


  现把全部指针运算列出如下:

  1) 指针变量加(减)一个整数。例如:

  p++

  p--

  p+i

  p-i

  p+=i

  p-=i

  一个指针变量加(减)一个整数并不是简单地将原值加(减)一个整数,而是将该指针变量的原值(是一个地址)和它指向的变量所占用的内存单元字节数加(减)。

  2) 指针变量赋值:将一个变量的地址赋给一个指针变量。

p=&a;  /* 将变量a的地址赋给p */
p=array;  /* 将数组array的首地址赋给p */
p=&array[i];  /* 将数组array第i个元素的地址赋给p */
p=max;  /* max为已定义的函数,将max的入口地址赋给p */
p1=p2;  /* p1和p2都是指针变量,将p2的值赋给p1 */

 

  注意,不能如下:

  p=1000;

  3) 指针变量可以有空值,即该指针变量不指向任何变量:p=NULL;

  4) 两个指针变量可以相减:如果两个指针变量指向同一个数组的元素,则两个指针变量值之差是两个指针之间的元素个数。

  5) 两个指针变量比较:如果两个指针变量指向同一个数组的元素,则两个指针变量可以进行比较。指向前面的元素的指针变量“小于” 指向后面的元素的指针变量。


  void指针类型

  ANSI新标准增加了一种“void”指针类型,即可以定义一个指针变量,但不指定它是指向哪一种类型数据。




专家
2018-02-21 11:19:53     打赏
2楼

谢谢大神的总结。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]