回覆列表
  • 1 # 使用者1612201272366

    int最大值,根據編譯器型別不同而變化。

    1 對於16位編譯器,int佔16位(2位元組)。 int的最大值為32767.

    2 對於32位和64位編譯器,int佔32位(4位元組)。 int的最大值為2147483647 3 可以透過列印sizeof(int)檢視平臺對應的int佔用位元組數。乘8後即為位數。 最高位為符號位,如位數為n,則最大值為 2^(n-1). 16位編譯器說明: int佔16位。 記憶體2位元組。 最大值:32767 這也是最原始版本的要求。 2 32位和64位編譯器: int佔32位。 記憶體4位元組。 最大值:21474836473 位數的增加,那麼自然位數也在倍增。 3,決定int最大值的主要原因,根據編譯器型別不同而變化。 所以某些編寫的程式,不能成功的在電腦中執行,多半與編譯器有關係,可能並不是程式的原因。 4 一般程式的表達方式,最高位為符號位,位數為n位時,則最大值為2^(n-1)即2的n-1次冪。 關於演算法的問題,自然也要使用我們所學習的數學知識。 5 在編譯器中,可以使用sizeof(int)檢視佔用的位元組數,將求取的數值透過pintf列印在控制檯。

  • 2 # 速速影片

    當無符號0以二進位制儲存在記憶體中的時候,每一位都為0,以32位int為例,(unsigned int)0的二進位制為:00000000000000000000000000000000按位取反(~)後,變成:11111111111111111111111111111111此時的十進位制為:4294967295除以2(因為int型別中有一半表示負數且比正數多一個)之後為:2147483647即為32位int型別最大值。

    C語言中最大的整型資料型別是long型別,佔4個位元組C中短整型和整型均佔2個位元組,取值範圍是 -32768 ~~~ 32767長整型佔4個位元組,取值範圍是 -2147483648 ~~~~ 2147483647如果是無符號數的話,可以表示的資料就是短整型和 整型: 0--- 65535長整型: 0---4294967295在C語言中如果一個數很大的話,超過最大的長整型,可以使用double來儲存,這樣不會影響運算精度。

  • 中秋節和大豐收的關聯?
  • 古人對兒女的寄語?