(転載)golang整数定数INT_MAX INT_MIN最大値最小値

705 ワード

転載先:https://blog.csdn.net/bdss58/article/details/78388858
C言語には、標準ライブラリlimitsがあります.hは、intタイプの最大値定数INT_のような最大最小値定数を定義するMAX、最小値定数INT_MIN、符号なし整数型uintタイプの最大値定数UINT_MAX
golangの標準ライブラリにはこれらの変数は定義されていません.ただし、ビット操作で演算することで、これらの定数を簡単に定義できます.
符号なし整数uintの最小値は0であり、そのバイナリが表すすべてのビットは0である.
const UINT_MIN uint = 0

その最大値のバイナリ表現のすべてのビットが1であると、
const UINT_MAX = ^uint(0)

符号付き整数int
符号化によると、その最大値はバイナリで表され、トップ0、残りの1であれば、
const INT_MAX = int(^uint(0) >> 1)

補数によると、その最小値はバイナリで表され、トップ1、残りの0であれば、
const INT_MIN = ^INT_MAX

  
転載先:https://www.cnblogs.com/K-artorias/p/11468656.html