指针的运算经常是与数组结合在一起的,在上节中也提到了数组指针和指针数组中涉及到一些关于指针的运算。本章节继续对指针的运算进行一个总结并说明一下双重指针极其运算。
1:指针运算的小结
(1)指针变量加(减)一个整数
C语言规定:一个指针变量加减一个整数并不是简单的将指针变量的原值加减一个整数,而是将该指针变量的原值(一个地址)和它所指向的内存单元字节数相加减。
例如:p+i代表地址计算:p+c*i
*(p+i)表示a[i]的值;(若无特殊说明,本节中p初始指向a[0]);
(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的值赋给p