title: Bug when managing whole numbers using C++ and VS2008?
body: <p>I was debugging a C++ program and I found out that, for some reason, under my version of visual studio 2008, some numbers dont seem to be stored correctly. For example,number -3254535440 seems to be stored as 1040431856. These numbers are small enough to be stored into a long long, so there should be no problem. If I run the following code, both error messages are displayed. I have tried on two different machines. Any idea? Thanks!</p>
  
  <pre><code>if (-3254535440 == 1040431856)
      printf("ERROR\n");
  
  long long j = -3254535440;
  if (j == 1040431856)
      printf("ERROR2\n");
  </code></pre>
  
  <p>Tested under Microsoft Visual Studio 2008 Version 9.0.30729.1 SP</p>