C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了为什么“const int *”指向非const int?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
下图中的代码一个示例,用于说明指向常量整数的指针.我的问题:

>由于int w未声明为常量整数,为什么它表示指针指向一个常量整数?
>为什么我们不能尝试最后一行?

如果指定常量的指针在分配给第一个值后不应该被赋值给任何其他值,那么指向常量的指针和常量指针之间的差异是什么呢? (根据我的理解,不能更改常量指针,但可以更改指向常量的指针…

为什么“const int *”指向非const int?

解决方法

正如您所发现的,C允许“指向const int的指针”实际指向非const int.它不会引起任何问题,为什么不允许呢?

指针不记得它是指向const int还是指向普通的int,所以你总是要把它当作指向const int的对待.这意味着* p = 3;是不允许的,因为编译器不确定* * p不是const int.

*现代编译器可能能够解决这个问题,但是语言说它们必须假装它们不能,并且它们无论如何都不会总是这样.

大佬总结

以上是大佬教程为你收集整理的为什么“const int *”指向非const int?全部内容,希望文章能够帮你解决为什么“const int *”指向非const int?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。