怎么会有危险呢?int x=3;const int *y=&x; x值是可以改变的,定义的y是一个指向x指针变量,那么y始终是指向x的,没有危险,使*y不可以被重新赋值,即不允许通过*y改变x的值,也不存在危险。
比较const int x=3;int *y=&x;和int x=3;const int *y=&x;第一种情况不允许。而第二种可以。因为常量相当于只读权限,不可被重写,那么用小权限指向大权限没有问题,反过来就不允许,会报错。
我认为,y是依附于x的,所以说,*y被改变是没有问题的。不知道有没有帮助到你。