Search code examples
c++pointersconstants

Is it possible to change a const data value?


can someone explain to me why does this code doesnt change the value of a? is it possible to change a const data value?

case 1:

const int a = 2;
*((int*)&a) = 3;
std::cout << a;

case 2:

const int a = 2;
const_cast<int&>(a) = 3;
std::cout << a;

Solution

  • Changing a const value is undefined behavior. I would advise you not to do it or write any program that does so.