Two different values at the same memory address
<h3>Code</h3>

<pre><code>#include &lt;iostream&gt;
using namespace std;

int main() {
    const int N = 22;
    int * pN = const_cast&lt;int*&gt;(&amp;N);
    *pN = 33;
    cout &lt;&lt; N &lt;&lt; '\t' &lt;&lt; &amp;N &lt;&lt; endl;
    cout &lt;&lt; *pN &lt;&lt; '\t' &lt;&lt; pN &lt;&lt; endl;
}
</code></pre>

<h3>Output</h3>

<blockquote>
  <p>22      0x22ff74</p>
  
  <p>33      0x22ff74</p>
</blockquote>

<p>Why are there two different values at the same address?</p>
