C++指针2
程序员文章站
2024-01-01 17:33:16
...
指针的算术运算、关系运算
指针类型的算术运算
-
指针与整数的加减运算
-
指针++,--运算
指针类型的算术运算
-
指针p加上或减去n
-
其意义是指针当前指向位置的前方或后方第n个数据的起始位置。
-
-
指针的++、--运算
-
意义是指向下一个或前一个完整数据的起始。
-
-
运算的结果值取决于指针指向的数据类型,总是指向一个完整数据的起始位置。
-
当指针指向连续存储的同类型数据时,指针与整数的加减运和自增自减算才有意义。
指针与整数相加的意义
指针类型的关系运算
-
指向相同类型数据的指针之间可以进行各种关系运算。
-
指向不同数据类型的指针,以及指针与一般整数变量之间的关系运算是无意义的。
-
指针可以和零之间进行等于或不等于的关系运算。
例如:p==0或p!=0
用指针访问数组元素
数组是一组连续存储的同类型数据,可以通过指针的算术运算,使指针依次指向数组的各个元素,进而可以遍历数组。
定义指向数组元素的指针
-
定义与赋值
例:int a[10], *pa;
pa=&a[0]; 或 pa=a;
-
等效的形式
-
经过上述定义及赋值后
*pa就是a[0],*(pa+1)就是a[1],... ,*(pa+i)就是a[i]. a[i], *(pa+i), *(a+i), pa[i]都是等效的。
-
注意
-
不能写 a++,因为a是数组首地址、是常量。
例6-7
设有一个int型数组a,有10个元素。用三种方法输出各元素:
-
使用数组名和下标
-
使用数组名和指针运算
-
使用指针变量
例6-7 (1) 使用数组名和下标访问数组元素
#include
using namespace std;
int main() {
int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
for (int i = 0; i < 10; i++)
cout << a[i] << " ";
cout << endl;
return 0;
}
例6-7 (2) 使用数组名和指针运算访问数组元素
#include
using namespace std;
int main() {
int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
for (int i = 0; i < 10; i++)
cout << *(a+i) << " ";
cout << endl;
return 0;
}
例6-7 (3) 使用指针变量访问数组元素
#include
using namespace std;
int main() {
int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
for (int *p = a; p < (a + 10); p++)
cout << *p << " ";
cout << endl;
return 0;
}
指针数组
推荐阅读
-
PDF2SWF 汉语转换
-
为什么 C++ / PHP / Delphi / C# 的设计者都是丹麦人?
-
hdu 2095 find your present (2) 找到只出现一次的数字
-
PHP数组,$a = {0,1,2,3}怎样变成$a = {1,2,3,4]
-
Codeforces Round #280 (Div. 2) B_html/css_WEB-ITnose
-
SQL Server 2005安装实例环境图解第1/2页
-
db2 catalog 远程数据库到本地
-
PHP任务学习2:认清变量的作用范围_PHP教程
-
婚姻和爱情,并不是1+1=2,而是0.5+0.5=1
-
Yii2增加验证码步骤详解,yii2验证码详解