您的位置:首页 > 编程语言 > C语言/C++

C语言特性(指针与数组)

2015-12-23 19:52 351 查看

指针与数组

指向数组的指针变量

简单来讲就是数组变量保存了数组的首地址。

指针运算

目前,指针变量存在如下几种赋值方式

1.p = &a;:将一个已有变量的内存地址赋值给指针变量p。
2.p = &arr[i];:将某个数组元素的内存地址赋值给指针变量p。
3.p = arr:将arr数组的首地址赋值给指针变量p。
4.p = pt:将指针变量pt中保存的地址赋值给指针变量p。


指针除了可以被赋值之外,还支持如下运算

1.指针变量加(或减)一个整数:当指针变量加或减n时,代表将该指针的地址加或减n*变量大小个字节。
2.当两个指针变量指向同一个数组的元素时,两个指针变量可以相减:两个指针变量相减返回两个指针所指数组之间元素的
个数。
3.当两个指针变量指向同一个数组元素时,两个指针变量可以比较大小:指向前面的数组元素的指针小于指向后面的数组元
素的指针。


数组变量作为函数参数

数组变量的本质就是指向第一个数组元素的指针常量,因此将数组变量作为参数的本质就是将指针变量作为参数。

当把数组变量作为参数传入函数时,只是把该数组变量的值(指向数组的指针)传入函数,并不是将数组本身传入函数,因此,传入函数的数组变量依然指向原有的数组。在函数中对数组变量所指的数组所做的修改将会影响原有数组的元素。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: