常量指针

常量指针: 
(1) 指向const或非const对象的const指针
 const double *pc;
 // 指针的指向可以改变,但是不能改变所指对象的值;
(2) 指向非const对象的const指针
 int *const curErr;
 // 不能指向其它对象,但可以修改指针指向对象的值;
(3) 指向const对象的const指针
 const double *const pi_ptr;
 // 指针的地址及指向对象的值都不能改变

 

int main() 
{
	// *********************************
	// 第一种常量指针:const double *pc;
	// *********************************

	const double *pc = 0; // 常量对象
	const double minWage = 9.60; // 常量指针

	// 只能用常量指针指向常量对象,不能使用费常量指针指向常量对象;
	// 不能通过pc修改minWage
	pc = &minWage;

	double dval = 3.14;

	// 可以用常量指针指向非常量对象;
	// 不能修改常量指针指向的对象的值,但是可以改变常量指针的指向;
	pc = &dval;

	dval = 3.14159;
	// 不能通过pc修改dval
	//! *pc = 3.14159;

	// **********************************
	// 第二种常量指针:int *const curErr;
	// **********************************

	int errNumb = 0;
	int myErrNumb = 0;
	// curErr是指向一个非const对象(int类型对象)的const指针
	int *const curErr = &errNumb;
	// 不能赋给curErr其它的地址值,但可以修改curErr指向的值;
	*curErr = 0;
	//! curErr = &myErrNumb;

	// *******************************************
	// 第三种常量指针:const double *const pi_ptr;
	// *******************************************

	const double pi = 3.14159;
	// 指向const对象的const指针
	// 指针的地址及指向对象的值都不能改变
	const double *const pi_ptr = π

	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值