指针的初步学习

指针(pointer)简介:

在C++编程语言中,指针是一种变量类型,它存储了另一个变量的内存地址。指针提供了一种非常强大的方式来访问和操作内存中的数据。

指针声明的一般形式为:type *varName,其中type代表指针所指向变量的类型,varName是指针的名称。例如,我们可以定义一个整型指针int *p,该指针指向一个整型变量。

指针可以通过解引用运算符(*)来访问其所指向的变量的值。例如,如果我们有一个整型变量a和一个指向它的指针p,那么我们可以这样使用它们:int a = 10; int *p = &a; // p指向a的地址 cout << *p; // 输出a的值,即10

指针还可以用于数组和动态内存分配。对于数组,可以使用指针来访问和操作数组元素。对于动态内存分配,可以使用指针来管理由`new`关键字分配的内存块。

需要注意的是,在使用指针时需要特别小心,因为指针可以指向任意类型的内存地址。如果将一个指针指向错误的类型或未初始化的内存地址,可能会导致程序崩溃或出现其他错误。因此,在使用指针时应该始终确保其指向正确的内存地址,并避免空指针的使用。

指针的概念:

“直接访问”方式,按变量地址存取变量值的方式。编译系统把变量名转换为变量的地址,对变量值的存取通过地址进行的。"间接访问"方式 通过存放变量地址的变量去访问变量专门存放变量地址的变量指针变量指针即地址(address),某个对象(变量)在内存中的存储位置 变量的指针就是变量的地址 指针变量就是存放变量地址的变量 用来指向变量 采用*表示指向

定义指针变量:基类型 * 指针名; int * ip;  //ip为指向int类型的指针 void * vp; //vp为指向任何类型的指针注意不同指针类型间的转换.

int * ip;
void * vp=ip;
ip=(int *)vp;

引用指针变量: 取址操作符& 通过取址操作符&将指针与某个具体的变量所在的地址关联起来

int a=100; int *ip=&a;   //将a的地址赋给了ip,这样ip就指向了a

取值操作符*: 通过取值操作符*可以获取指定地址的对象

int a=100;
ip=&a;   
cout<<"a="<<*ip<<endl;      //100
int *ip;  
 //声明语句,“*”说明ip是个指针
 //只在声明变量出现
i=*ip;   // “*”是取值运算符

指针的正确使用要求程序员对内存管理有一定的了解和掌握。不正确地使用指针可能导致内存泄漏、悬空指针或野指针的问题,这些问题都可能引发程序崩溃或出现不可预测的行为。因此,在使用指针时需要谨慎,并遵循一些指针的最佳实践。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值