C语言 const

 const就像是一把锁,如果在定义时表达式前面加上了const,那么所定义的变量就会变为只读状态。在做项目时,我们如果不想让用户改变某个变量的值,那么我们就会在定义变量时加上const。const在指针上的用法有三种,如果在*和p前面都加上const,就相当于将指针锁住并且将它指向的地址也锁住,也就是指向不可改,内容也不可改。如果只在*前面加const,就是将指向的地址锁住,就是指向可改,内容不可改。要是只在p前面加上const,那么就是将指针锁住,但仍可以通过*p改变他指向的空间,也就是指向不可改,内容可改。

const作用:修饰一个变量使之变成常量 

     要求:必须初始化 

将变量变为常量 常量化 必须初始值  const放在int后也可以 

	const int h = 8848;
	const double PI = 3.1415926;
	//h = 8847;//变量值不可修改  表达式变为了不可修改的左值 

但是防君子不防小人,仍然可以通过指针对其进行修改

	//不建议 绕过变量的修改值
	int* p = &h;
	*p = 8846;
	printf("%d\n", h);

     const 修饰指针变量:
    1:指针变量不可指向新地址
    2:指针变量指向的地址数据不可修改

    //------指向可改 内容不可改------------//

	int a = 3, b = 4;
	int const* p = &a;
	*p = 10;
	p = &b;

 //----------指向不可改 内容可改---------------// 

	int a = 3, b = 4;
	int* const p = &a;
	*p = 10;
	p = &b;

//----------指向不可改 内容不可改---------------//

    int a = 3, b = 4;
	int const* const p = &a;
	*p = 10;
	p = &b;

--结论:const放到谁的前面,谁就不可改---------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员懒羊羊

多多支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值