91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

solidity智能合約[7]-整型與運算

發布時間:2020-04-15 22:47:10 來源:網絡 閱讀:457 作者:jonson_jackson 欄目:開發技術

整型變量

整數是現實中處理最多的單位,在solidity中的整數類型有int和uint,int類型可以存儲負數,uint類型只能夠存儲非負數。
int類型:int8,int16,int24,int32…int256
uint類型:uint8,uint16,uint24,uint32…uint256

后面的數字代表的是計算機的最小存儲單位:位。 1個字節代表8位。類型以一個字節遞增,最大到256位,也就是32個字節。
int == int256
uint == uint256

整型運算

1、加
2、減
3、乘
4、除
5、取余數
6、平方

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//1、加
function add(uint a,uint b) public pure returns(uint){
    return a+b;
}
//2、減
function sub(uint a,uint b) public pure returns(uint){
    return a-b;
}
//3、乘
 function cheng(uint a,uint b) public pure returns(uint){
    return a*b;
}
//4、除
function chu(uint a,uint b) public pure returns(uint){
    return a/b;
}
//5、取余數
  function yu(uint a,uint b) public pure returns(uint){
    return a%b;
}
//6、平方
function pingfang(uint a,uint b) public pure returns(uint){
    return a**b;
}

整型溢出

整數如果處理不當,會發生溢出效應。如下面的函數overflow。
函數的功能為執行+1的操作。 當傳遞4、返回5. 傳遞200,返回201,但是當傳遞255的時候,會返回0,這是由于發生了溢出。
要理解溢出的本質,需要明白整型在計算機中的存儲方式。

1
2
3
4
5
// 1111 1111
//10000 0000
function overflow(uint8 a) public pure returns(uint8){
   return a +1;
}

整型在底層的存儲方式

計算機最小的存儲單位為,存儲0或者1。 下面的圖片描述了以位標示的二進制代碼101轉換為10進制后的計算方式。

solidity智能合約[7]-整型與運算

底層存儲方式

以此類推,可知道,uint8在內存中占8位,最大值為全部都存儲1的時候,轉換為10進制為255。

solidity智能合約[7]-整型與運算

uint8最大值

當加一之后,
1111 1111
變為了
10000 0000
但是只能存儲8位,所以截斷之后,變為了
0000 0000

所以返回結果為0

  • 本文鏈接: https://dreamerjonson.com/2018/11/10/solidity-7/

  • 版權聲明: 本博客所有文章除特別聲明外,均采用 CC BY 4.0 CN協議 許可協議。轉載請注明出處!

solidity智能合約[7]-整型與運算

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

洞头县| 尚志市| 柞水县| 武清区| 永和县| 河间市| 洛阳市| 饶河县| 永胜县| 金溪县| 庆阳市| 忻州市| 自贡市| 湟源县| 武乡县| 唐河县| 百色市| 巴楚县| 太白县| 双辽市| 田阳县| 蓬莱市| 益阳市| 武陟县| 文登市| 光泽县| 兴化市| 磴口县| 南投市| 独山县| 莱芜市| 延边| 铜鼓县| 商都县| 屏山县| 永定县| 六枝特区| 安图县| 苍南县| 电白县| 改则县|