Solidity 练习:局部变量

2022-12-29 Web3 Solidity

# 一、题目说明

与状态变量不同,局部变量不存储在区块链上。

如何声明局部变量?

局部变量在函数内部声明。

函数完成执行后,分配给局部变量的任何数据都将丢失。下面是一个例子:

contract MyContract {
    function func() external {
        uint localVar = 123;
        // localVar 不会存储在区块链上
    }
}
1
2
3
4
5
6

# 二、任务列表

  • 编写一个名为 mul 的函数,将其声明为 external 和 pure,返回 uint。
  • 在函数中声明一个局部变量,类型为 uint 的 x,值为 123456。
  • 返回 x 乘以自身,即 x * x。

# 三、解答代码

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

contract LocalVariables {
    function localVars() external {
        uint u = 123;
        bool b = true;
    }

    function mul() external pure returns (uint) {
        uint x = 123456;
        return x * x;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 四、参考资料

Last Updated: 2023-01-28 4:31:25