字串
我們都知道字串在其他程式語言中,都是出場率相當高的乙個角色,重要程度不言而喻。在solidity中也不例外。在上節我們學習了動態位元組陣列,而我們的字串,可不可以按照動態位元組的陣列去獲取他的長度和其中的元素呢?我們寫乙個例子來看看吧。
pragma solidity ^
0.4.16
;contract dynamicstring
function getpartname()
returns
(bytes1)
}
執行編譯後,我們發現string並沒有給我們提供長度屬性,也不能通過陣列下標的形式獲取其中的字元。這種方式顯然是不行。
那怎麼實現我們的這種訴求呢?
當然 ,我們可以想辦法,向我們的動態位元組陣列靠攏,例如下面方法就可以實現
pragma solidity ^
0.4.16
;contract dynamicstring
function getpartname()
returns
(bytes1)
function changename()
}
主要就是通過bytes()
進行了強制轉換。
同時我們注意到,我們的乙個英文本元恰好占用了乙個位元組,那麼我們輸入中文呢?
如圖,我們可以看到乙個漢字佔3個位元組,這是因為我們的漢字在記憶體中是通過utf8型別儲存的,至於其他一些特殊字元和數字,當然也是乙個字元占用乙個位元組啦。
通學智慧型合約系列(六) 位元組陣列
關鍵字有 bytes1,bytes2mbytes3,bytes32 以步長1遞增 byte代表bytes1。pragma solidity 0.4.16 contract bytearray 固定長度位元組陣列對於數值來說,有點等同於我們的uint。乙個位元組等於8位。即bytes1 有點等同於ui...
Python基礎 七 字串
python字串 python 訪問字串中的值 python 不支援單字元型別,單字元在 python 中也是作為乙個字串使用。python 訪問子字串,可以使用方括號來擷取字串,如下例項 var1 hello world var2 runoob print var1 0 var1 0 print ...
C primer plus 系列2 字串
1 將字串存在陣列中的兩種方法 2 如何在陣列中使用字串 3 cin只能讀取乙個單詞,讀到換行符認為字串結束 4 介紹cin.get cin.getline 1 將字串存在陣列中的兩種方法 int a 5 0 用來標記字串結尾 int a 5 food 稱為字串常量 2 在陣列中使用字串 inclu...