学习笔记 – C++指针运算

C++指针运算

指针变量加或减 一个整数  

p++;
p--;
p+i;
p-i;

C++规定,一个指针变量加或减一个整数是将该指针变量的原值和它指向的变量所占用的内存单元字节数相加或相减。

C++指针变量赋值 

将一个变量地址赋给一个指针变量。

point=&array;//将变量array的地址赋给point
point=array;//将数组array首元素的地址赋给point
point=&array[1];//将数组array第1个元素的地址赋给point
point=min;//将自定义min函数的入口地址赋给point
point_1=point_2;//将同类型的指针变量point_2的值赋给point_1

C++指针变量可以有空值

即该指针变量不指向任 何变量,可以这样表示: 

point=NULL;

实际上NULL代表整数0,也就是使point指向地址为0的单元,这样可以使指针不指向任何有效的单元。 

实际上系统已先定义了NULL: 

#define NULL 0

在iostream头文件中就包括了以上的NULL定义, NULL是一个符号常量。

读者应明白一点,point的值等于NULL和point未被赋值是两个不同的概念。

C++两个指针变量可以相减 

如果两个指针变量指向同一个数组的元素,则两个指针变量值之差是两个指针之间的元素个数。

C++两个指针变量比较 

若两个指针指向同一个数组的元素,则可以进行比较,指向前面的元素的指针变量小于指向后面元素的指针变量。

C++使用指针的优缺点

指针是C语言和C++的重要组成部分,使用指针的优点是: 

  • 提高程序效率。
  • 在调用函数时,如果改变被调用函数中某 些变量的值,这些值能为主调函数使用,即可以通过函数的调用,得到多个可改变的值。
  • 可以实现 动态存储分配。

使用指针的缺点是:

  • 指针使用实在太灵活,对不熟练的程序员来说,很容易出错,而且出现的错误很难发现。

C++指针运算

更多案例可以go公众号:C语言入门到精通

正文完