小程序三方平台开发: 解析小程序开发的未来趋势和机遇
591
2022-10-18
4-数组、指针与字符串1.2
指针
动态内存分配和管理离不开指针。
1、内存空间的访问方式
在c++中程序如何利用内存单元存取数据?有两种方式:变量名和地址。
指针变量永不存放内存单元地址的。
数据类型 *标识符;
所有指针的值都是默认是unsigned long int 型。
指针可以指向各种类型,包括基本类型、数组(数组元素)、函数、对象、同样可以指向指针。
3、与地址相关的运算----"*"和"&"
“*”称为指针运算符(也称为解析),表示获取指针所指向的变量的值。
“&”称为取地址运算符,
4、指针的赋值
赋初值有两种方法:
存储类型 数据类型 *指针名=初始地址;
指针名=地址;
关于指针的类型,还应该注意以下几点:
const char *name1="John";
char s[]="abc";
name1=s;//正确
*name1='1';//编译时指出错误
char * const name2="john";
name2="abc";//错误,name2是指针常量,值不能改变。
c、一般情况下,指针的值只能赋给相同类型的指针。但是有一种特殊的void类型指针,可以存储任何类型的对象地址,就是说任何类型的指针都可以赋值给void类型的指针变量。
5、指针运算
int *p;
p=0;//可以避免误用指针p
6、用指针处理数组元素
7、指针数组
类型名 *数组名[下标表达式]
8、指针型函数
数据类型 *函数名(参数表)
{
函数体
}
9、指向函数的指针
数据类型 (*函数指针名)(形参表)
函数指针在使用之前也要进行赋值,使指针指向一个已经存在的函数代码的起始地址,一般语法为:
函数指针名=函数名;
10、对象指针
a、对象指针的一般概念
对象所占据的内存空间只是用于存放数据成员的,函数成员不在每一个对象中存储副本。对象指针就是用于存放对象地址的变量。对象指针遵循一般变量指针的各种规则,一般语法形式如下:
类名 *对象指针名;
eg:
p_Point=&p1;//将对象p1的地址赋给p_Point,使p_Point指向p1
访问对象成员的语法形式如下,
对象指针名->成员名
#include
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~