何为指针,其实指针也是一种数据类型,具有指针类型的变量称为指针变量。指针变量用于存放内存单元地址。
C++提供了两个与地址相关的运算符(“*”和“&”)。
特性:不能通过指针修改所指对象的值,但是指针本身可以改变,可以指向另外的对象。
#include
using namespace std;
int main()
{
int a=10;
const int* p=&a; //指向常量的指针 ,不能通过指针来修改所指对象的值。但指针本身可以指向其他的对象。
cout<<"a= " << a <
运行结果:
#include
using namespace std;
int main()
{
int a=10;
const int* p=&a; //指向常量的指针 ,不能通过指针来修改所指对象的值。但指针本身可以指向其他的对象。
cout<<"a= " << a <
运行结果:
#include
using namespace std;
int main()
{
int a=10;
const int* p=&a; //指向常量的指针 ,不能通过指针来修改所指对象的值。但指针本身可以指向其他的对象。
cout<<"a= " << a <
运行结果:(此处编译器提示,分给p的内存空间为只读)
#include
using namespace std;
int main()
{
int a=10;
const int* p=&a; //指向常量的指针 ,不能通过指针来修改所指对象的值。但指针本身可以指向其他的对象。
cout<<"a= " << a <
运行结果:
特性:这时指针本身的值不能被修改,但可以通过指针修改其所指向变量的值。
#include
using namespace std;
int main()
{
int a=10;
int* const p=&a; //指针类型的常量 ,指针本身的值不可以被改变,但可以通过它修改其所指对象的值。
cout<<"a= " << a <
运行结果:
#include
using namespace std;
int main()
{
int a=10;
int* const p=&a; //指针类型的常量 ,指针本身的值不可以被改变,但可以通过它修改其所指对象的值。
cout<<"a= " << a <
运行结果:
常量指针:指向常量的指针。
指针常量:指针类型的常量。