菜鸟编程 指针初步

笔者想在此分享一下自己最近学习的指针相关的内容。

指针是什么?

指针就是内存的一个地址,它能够增加变量的访问方法,也就是说,变量不仅能通过变量名来直接调用,也可以通过指针来访问。指针指向的就是这个变量所在的地址,通过访问这个地址,来调用地址所存储的变量。

指针的定义与使用。

int i = 0;

int *p = &i;

这里便是对一个指针p的定义。*表明变量p是一个指针,而&是取地址的操作符,也就是说,将变量i的地址存到指针p中。通过操作指针p,来对变量i进行间接的操作。定义指针的目的不是获取地址,而是间接访问该变量。*运算符是取指针所指向的值,以上面为例子:int y = *p + 3; 那么这个时候y就是3。

再举一个例子:

int x = 4, y = 5;

int *p = &x;

*p = y+2;   此时x = 7,p指向x

p = &y;  此时p指向y

cout << *p;  输出结果为5


指针与数组的简单结合。

数组名保存了数组的第一个元素的地址,也就是说,数组名其实就是一个指针,但是它是一个指针常量,也就是说,它的值不能改变。定义一个数组int i [9],一个指针p = i;

那么就可以通过指针p来访问数组的元素。p[3] 就是数组的第四个元素。

举一个用不同方式输出数组的例子:

之前是用for循环再cout<<i[a];来输出,现在有了不同的方法。

int array[9];int *p;  

存入数据

for(int i = 0;i <= 8;i++)

{cout << array[i]; }

for(int i = 0;i<= 8;i++)

{cout << *(array+i);}

for(p = array; p<= array+8;p++)

{cout << *p;}

for(p = array,i = 0;i <= 8;i++)

{cout << *(p+i);}

for(p = array,i =0;i<=8;i++)

{cout << p[i];}


以上是指针的基础的基础的应用。下一篇,笔者想分享一下指针与动态内存分配的相关内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值