current position:Home>Convert uint to bytes in solidity
Convert uint to bytes in solidity
2022-02-03 20:46:58 【Q & A of Denglian community】
Solidity A lot of Hash function , Such as :keccak256 Such as need bytes As a parameter , This is sometimes necessary uint Turn into bytes .
uint How to turn into bytes type
Take the answer 1:
Solidity in uint turn bytes Several ways to ,gas Consumption from less to more :
toBytes0 (): use inline assembly Realization ,Gas The consumption is the least , The most efficient way .
remarks : This implementation will appear in some cases out-of-gas, Unknown cause .
toBytes1 () : use inline assembly Realization recommend ;
toBytes2 () : First convert to bytes32, Then press one by one to copy directly ;toBytes3 () : Convert directly one by one , Minimum efficiency .
pragma solidity >=0.4.22 <0.7.0;contract uintTobytes { // Than toBytes1 Less 15% de gas function toBytes0(uint _num) public returns (bytes memory _ret) { assembly { _ret := mload(0x10) mstore(_ret, 0x20) mstore(add(_ret, 0x20), _num) } } function toBytes1(uint256 x) public returns (bytes memory b) { b = new bytes(32); assembly { mstore(add(b, 32), x) } } function toBytes2(uint256 x) public returns (bytes memory c) { bytes32 b = bytes32(x); c = new bytes(32); for (uint i=0; i < 32; i++) { c[i] = b[i]; } } function toBytes3(uint256 x) public returns (bytes memory b) { b = new bytes(32); for (uint i = 0; i < 32; i++) { b[i] = byte(uint8(x / (2**(8*(31 - i))))); } }}
About gas Consumption of , You can also compare yourself .
copyright notice
author[Q & A of Denglian community],Please bring the original link to reprint, thank you.
https://en.netfreeman.com/2022/02/202202032046558486.html
The sidebar is recommended
- To learn blockchain technology, let's build a group school district blockchain technology
- Review of dimitra and Morpheus AMA, global blockchain agricultural technology platform
- Bitcoin public key principle
- Blockchain application series - did
- Bitcoin series - using docker to build BTC private chain
- Bitcoin series - BTC synchronous public chain, test chain and private chain
- Bitcoin series - BTC compilation and installation
- Ethereum series - Web3 js
- Experience - deploy Ethereum private chain (POA)
- Experience part - deploying Ethereum private chain (POW)
guess what you like
-
Ethereum series - Smart contract development and commissioning
-
Ethereum series - DAPP development three swordsman
-
IPFs series - combination of IPFs and blockchain
-
How can the Internet of things, big data, cloud computing, blockchain and artificial intelligence be combined to promote the development of digital economy?
-
The form of story telling tells you what is server, cloud deployment, virtualization, artificial intelligence, blockchain, cloud computing, big data and privacy computing
-
Open source Hongmeng, metauniverse, blockchain, open source collection | alot open source science and technology festival and openharmony technology forum are in hot registration
-
Bankless year-end summary: encrypted network will subvert the old power system
-
The other side of Dao: bribery in the chain and the rise of dark Dao
-
The first 3D chain game (CSC) of metauniverse concept seeks token in encrypted world and blockchain game
-
Metauniverse 3D [NFT] arrg mobile game of metauniverse blockchain [Curtis sword]
Random recommended
- It is said on the Internet that three arrows bought "Adidas and gear", which is actually a fraud
- How will the global network and metauniverse affect international politics?
- GIS + blockchain, a new application scenario of geospatial data, is expected in the future
- The demand for NFT, a clothing luxury brand, has soared, and metauniverse may provide opportunities for transformation
- Curtis sword CSC coin star "Q coin mode" will be launched in January
- Adaoracle ecology and its decentralized Oracle network promote the development of blockchain
- a16z:Web3. 0 ecological panorama
- Development and application of blockchain in food industry
- Chat blockchain (III)
- Ethereum smart contract - building the basic environment
- Founder of ENS: not only Eth, to be the domain name service provider of every digital resource in the world
- A piece of land is 32 million. Why do real estate tycoons buy land in the virtual world?
- Three minutes to understand why arbitrum TVL can lead in layer2
- 13th anniversary of bitcoin white paper, 13 key knowledge points
- From didi to bitcoin, towards a new era of zero friction economy
- Randomness in bitcoin
- Blockchain private Chain NEW
- Blockchain private chain
- Blockchain game: unsustainable or is the future coming?
- Chat blockchain (IV)
- What else does the meta universe lack? Immersive sound hasn't been customized for avatars yet
- Ethereum web3js calls smart contract and does not return transaction hash
- How is Block 0 confirmation implemented
- What are the testing tools for Ethereum smart contract?
- Why can't I display pictures in my wallet when I bind the tokenid with the hash returned from uploading to IPFs?
- TransferHelper: TRANSFER_ FROM_ FAILED
- How to solve the problem of solidness version and package?
- How can a token in Tron wave field and TRX Group LP, pair contract obtain the quantity of a token through LP?
- Using openzepplin library contract
- What was the initial POS consensus agreement?
- Introduction to blockchain
- What progress has filecoin made so far?
- What are the impacts of Libra compared with DCEP?
- What is a token in the blockchain?
- Is there any material that can make Xiaobai learn blockchain quickly?
- How to validate smart contracts?
- Can Ethereum's official wallet password be restored if you forget it?
- What is BiP
- How to convert byte type to integer uint in solidity
- Can this be used in the smart contract constructor?