zoukankan      html  css  js  c++  java
  • 强制修改常量的值

    常量的值是不可以被修改的,但是由于指针的使用,使得常量值的改变成为可能。它所修改的常量也只是由const定义,通过取地址运算符指向该常量得到内存,然后改变该内存的内容,实现常量值的强制修改。

    本例以整形常量为例,定义整形指针point及整形数据changliang(由const定义的常量)。将point指向changliang所在的内存,通过改变内存的内容,实现强制性的改变常量值。

    代码如下:

    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
    	int *point;
    	const int changliang=12;
    	point=(int*)&changliang;
    	*point=32;
    	cout<<"changliang值:"<<changliang<<endl;
    	cout<<"point指向changliang内存的值:"<<*point<<endl;
    return 0;
    }
    

    运行结果:

    注意:由运行结果可以看出,强制改变常量的值并没有真正实现。它只是改变了changling所占内存的值,并没有改变changling的值

  • 相关阅读:
    Ajax基础1
    jQuery框架源码解读
    关于struts、spring 和 hibernate的说明
    struts2学习笔记(一)
    NodeJS+MongoDB
    最佳实践(二)
    ajax请求web容器控制超时
    实战经验
    javascript学习笔记(二)
    spring学习笔记(六)
  • 原文地址:https://www.cnblogs.com/0405mxh/p/10125210.html
Copyright © 2011-2022 走看看