知識社群登入
位置: AutoCAD開放式教學 > 討論區 > 討論
int 的 overflow
1樓
#if 0

 a= 40000, b= 60000, c= -1894967296
請按任意鍵繼續 . . .

int 型態的變數是 4- 個 Bytes, 32- 個 bits,
有 一個 bit 拿來表示 正/或是 負,剩下 32- 個 bits,

從 0 開始編排正的整數,所以可以表示的範圍是
0 到 +2147483647

#endif
// ----------------------------------------------

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int a, b, c;
    
    a= 40000;
    b= 60000;
    c= a*b;
    
    printf("\n a= %d, b= %d, c= %d \n", a, b, c);
    system("PAUSE");
    return EXIT_SUCCESS;
}