关于const int以及相关指针用法
2017-11-21 23:46
387 查看
const int a; int const a; 这两个写法是等同的,表示a是一个int常量。
const int *a; 表示a是一个指针,可以任意指向int常量或者int变量,它总是把它所指向的目标当作一个int常量。也可以写成int const* a;含义相同。
int * const a; 表示a是一个指针常量,初始化的时候必须固定指向一个int变量,之后就不能再指向别的地方了。
int const * a const;这个写法没有,倒是可以写成int const * const a;表示a是一个指针常量,初始化的时候必须固定指向一个int常量或者int变量,之后就不能再指向别的地方了,它总是把它所指向的目标当作一个int常量。也可以写成const int* const a;含义相同。
对于const int *a和int *const a,是不是可以理解为:const int *a中const修饰*a,但是&a可变,只要&a指向的目标是const类型就可以;而int *const a中const修饰&a,一旦指向则不能改写,但是可以修改*a的值?那么把你的理解里的&a都改成a就对了。
const int *a; 表示a是一个指针,可以任意指向int常量或者int变量,它总是把它所指向的目标当作一个int常量。也可以写成int const* a;含义相同。
int * const a; 表示a是一个指针常量,初始化的时候必须固定指向一个int变量,之后就不能再指向别的地方了。
int const * a const;这个写法没有,倒是可以写成int const * const a;表示a是一个指针常量,初始化的时候必须固定指向一个int常量或者int变量,之后就不能再指向别的地方了,它总是把它所指向的目标当作一个int常量。也可以写成const int* const a;含义相同。
对于const int *a和int *const a,是不是可以理解为:const int *a中const修饰*a,但是&a可变,只要&a指向的目标是const类型就可以;而int *const a中const修饰&a,一旦指向则不能改写,但是可以修改*a的值?那么把你的理解里的&a都改成a就对了。
相关文章推荐
- int const 与 const int区别 以及指针相关
- C语言字符串以及相关指针的使用
- oracle AMM、ASMM区别以及相关用法
- 有关于dmx控制器的相关使用问题以及当中的特点
- 关于结构体以及内部指针的一道面试题
- 关于适配ios8、iPhone6、iphone plus以及资源优化相关问题
- 关于TabHost的用法以及注意事项
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- [基础]关于extern指针和数组的用法
- 关于C++中函数指针的使用(包含对typedef用法的讨论)
- 关于sscanf和strtol的用法以及在ini文件中读取section,key,value的用法
- $_SERVER 关于网址的相关参数和用法
- 关于function declared implicitly的正确解法以及extern的用法
- 关于Spring的69个面试问答和Top25个问答--终极列表,以及Spring相关知识
- iOS开发关于适配iOS10以及Xcode8的相关新知识
- Java之&0xff用法解析以及原码、反码、补码相关知识
- 常见的指针数据类型以及const用法详解
- 关于WM_MOUSEHOVER和WM_MOUSELEAVE消息的用法以及按钮的变色问题!
- 关于C语言指针的用法
- 关于Android中style文件的作用以及用法详解