const
来源:互联网 发布:俄罗斯 苏联 知乎 编辑:程序博客网 时间:2024/04/28 03:07
#include<stdio.h>#include<stdlib.h>//const int *p//int const *p//int * const p//const int *const p//int const * const p//const在*左边,指向的是一个常量//const在*右边,指针是一个常量void main(){int num = 10;num = 20;const int data = 10;//只有初始化的时候可以赋值//data = 20;//报错const int *p = &data;//p是指向常量的指针,只能读不能改写p = #//*p = 3;//报错,提示左值不可修改const int *a = 0;const int b = 1;int c = 1;a = &b; //ok! 额外:注意不能通过a 来修改 b值a = &c;//ok! 额外:虽然c本身不是一个常量//*a = 2; //erro! 为题就在这里,不能修改通过 *a 所指向的对象值,最后赋值得对象是c,因此不能通过*a 来修改c值。int *const a;//这里const修饰的是 a ,a代表的是一个指针地址//因此不能赋给a其他的地址值,但可以修改a指向的值//这有点和cont int *a相反的意味,例子就不说了int const *a;//和 const int *a 的意义是相同的 他们两个的作用等价const int * const a;//这个代表a所指向的对象的值以及它的地址本身都不能被改变const int *const a;//a所指向的对象及对象的值均不可改变。//关于const的点滴补充://1、const 对象的地址只能赋值给指向const 对象的指针//2、指向const 对象的指针可以 被赋 以 一个非const 对象的地址//3、指向const 得指针常被用作函数的形式参数,保证被传递给函数的实际对象在函数得实际对象在函数中不会被修改//4、常量在定义后就不能被修改, 所以它必须被初始化。未初始化的常量定义将导致编译错误(上面都是在说明const得问题,所以没有赋值,实际语句中要赋值的)}
阅读全文
0 0
- const
- const
- const
- CONST
- const
- const
- const
- const
- const
- const
- Const
- const
- const
- const
- CONST
- const
- const
- const
- 015 t分布、卡方分布、F分布习题及正态总体下常用分布
- 19.Python
- 程序员在阿里巴巴总部工作是怎么样的?
- 程序员和程序艺术家
- 检索本地本文
- const
- 字符串应用
- 结构体对齐和深拷贝浅拷贝
- 队列
- 图像的梯度和幅值
- GET和POST中文乱码的解决方法
- 细说浏览器输入URL后发生了什么
- 抽象类与接口的区别
- POJ:3608 Bridge Across Islands 旋转卡壳