黑马程序员技术交流社区
标题:
C语言-const关键字
[打印本页]
作者:
wangchao1992
时间:
2015-9-18 15:12
标题:
C语言-const关键字
const使用的地方
1)修饰变量:const修饰变量,使得变量变成常量
2)修饰指针
#include <stdio.h>
int main(int argc, const char * argv[]) {
int a = 10;
int b = 20;
//定义个指针变量,p指向a
//此处的const的作用是指针变量p的指向可以改变,但是指向的变量的值
//不能改变的
//1、const在 * 的 左侧,const修饰的指针变量指向可变,指向的变量的值不可变
const int *p = &a; //给p初始化
p = &b; //重新修改了p的指向
//*p = 1000;//指向变量的值不可以改变
int const *p1 = &a;
p1 = p; //p1的指向也是可以改变
// *p1 = 100; //p1指向的变量的值是不能改变的
//2、const在 * 的右侧 ,const修饰的指针变量,指针变量指向的变量值可以变,指向不能变
int * const p2 = &a;
*p2 = 2000; //值可以改变
//p2 = &b; //p2的指向不能变
//3、const在 * 的 两侧,const修饰的指针变量的指向和值,都不能改变
const int * const p3 = &a;
// p3 = &b; //只向不能变
// *p3 = 100; //指向的变量的值也不能变
/*
记忆技巧:
看 const 和 * 的位置
如果 const 在 * 的左侧 表示指针变量指向的变量的值不能变,但是指向可以改变
如果 const 在 * 的右侧 表示指针变量指向的变量的值可以改变,但是指向不可以改变
如果 const 出现在 *的两侧,表示指针变量的指向和值都不能改变
*/
printf("a = %d\n",a);
return 0;
}
作者:
liminghui
时间:
2015-9-18 16:08
总结的很好~
作者:
bowenfei
时间:
2015-9-18 18:32
刚开始看指针。。
作者:
L503254118
时间:
2015-12-25 21:42
God chao ,this blog is very good ,add oil.
作者:
allenli12
时间:
2015-12-25 22:39
很详细啊
作者:
san_ss
时间:
2015-12-26 00:26
嗷呜~ 求黑马币
作者:
yolande
时间:
2015-12-26 00:54
对头,指针就这里容易出错,但是一般都是用前者
作者:
wkop
时间:
2015-12-27 22:02
好帖子,学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2