区块链——Solidity编程
一、加减乘除
// SPDX-License-Identifier: UNLICENSED
//表明此代码未使用开源许可证pragma solidity ^0.8.0;
//指定了编译此合约所需的Solidity编译器版本contract SimpleCalculator {//合约的定义// 加法function add(uint256 a, uint256 b) public pure returns (uint256) {return a + b;}//function add(uint256 a, uint256 b):定义了一个名为add的函数,它接受两个uint256类型的参数a和b。//public:表示此函数可以从合约外部调用。//pure:表示此函数不读取也不修改区块链上的状态。它只返回计算结果。//returns (uint256):指定了函数的返回类型为uint256。// 减法function subtract(uint256 a , uint256 b ) public pure returns (uint256){return a - b ;}//乘法function multiply(uint256 a, uint256 b) public pure returns (uint256){return a * b ;}// 除法function divide(uint256 a, uint256 b ) public pure returns (uint256){require(b >0 , "Division by zero is not allowed");//这是一个前置条件,用于确保除数b不为零。如果b为零,则交易将被回滚,//并显示错误消息“Division by zero is not allowed”。return a / b;}
}
二、存储和读取一个整数
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;contract storageContract {uint256 private storageValue;//定义了一个名为storageValue的私有状态变量,其类型为uint256。//由于它被标记为private,因此只能在合约内部被访问和修改//设置存储的整数值function set(uint256 x) public {storageValue = x;}//获取存储的整数值function get() public view returns (uint256) {//view函数承诺不会修改区块链上的状态,仅读取数据return storageValue;}
}