mypoint.cpp
来自「编程实例」· C++ 代码 · 共 59 行
CPP
59 行
#include <iostream>
using namespace std;
//typedef const double *pc;//定义指向常量对象的指针;
//typedef double *const cp;//定义常量指针;
//typedef double * pDbl;
void main()
{
int iVal=5;
int *pi = &iVal; //如果声明为int *pi = iVal则出现错误
cout<<*pi<<endl;
cout<<pi<<endl;
//double a1 =1.0;
//double a2 =2.0;
//const pdbl dblQ =&a1;
//*dblQ =a2;
//cout<<*dblQ<<endl;
/*
double a1 =1.0;
double a2 =2.0;
pc p1 =&a1;
p1 =a2;
cout<<*p1<<endl;
*/
//下面的代码讲述关于const修饰的指针
//指向const对象的指针
double dblVal =5.0;
double dblTry =6.0;
const double *pDbl =0;//声明指向const对象的指针
pDbl =&dblVal; //将变量dblVal的地址赋给指针
//*pDbl =7.0; 这条语句会出错,因为,*pDbl对应的是常量。
//然而,语句dblVal =7.0;却不会错,此时,*pDbl的值也变为7.0。
//因此,为了确保不能改变dblVal的值,应该声明dblVal为如下语句:
//const dblVal =5.0;
cout<<*pDbl<<endl;
pDbl =&dblTry; //pDbl是可变的,为其赋不同的地址值,使其指向不同的对象
cout<<*pDbl<<endl;
//const指针
double dblF =7.0;
double dblS =8.0;
double *const ptr =&dblF;//声明常量指针
//ptr =&dblS;这条语句错误,此时的指针是常量,不能为改变指针的内含地址值
cout<<*ptr<<endl;
*ptr =dblS;//常量指针,然而其所指的对象却是可改变的
cout<<*ptr<<endl;
const double *const pCtr =&dblF;//声明常量指针,指向常量对象
cout<<*pCtr<<endl;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?