//SPDX-License-Identifier: GPL-3.0
//许可证号,可能会引发警告
pragma solidity ^0.8.0;//solidity版本号,必须和左边对应上
contract helloworld{
//写一个 helloworld的结构体,类似于主函数
string myname = "Your name"; //定义一个 string类型的myname,赋值为your name
//调用getName函数,gas是否会消耗?(1)
function getName() public view returns (string memory) {
//定义一个名字叫getname的功能函数,显示范围为public,view为修饰符,returns 为函数的返回值,(string memory)返回值类型为string类型
return myname; //有返回值,返回值为myname
}
//调用changeName函数,gas是否会消耗?(2)
function changeName(string memory _newname) public { //(string memory _newname)为定义一个输入,输入类型为string
myname = _newname; //把输入的newname赋值为 myname
}
}
// SPDX-License-Identifier: MIT pragma
solidity ^0.8.0; //版本号
contract Test1 { //定义一个 test1的结构体
string public name = unicode"老子Hello "; // 定义一个string字面量
//应该添加什么修饰符取消getName函数的警告?
function getName() public view returns (string memory) { //函数名称定义为getname,function为功能定义,public定义范围,view为修饰符,returns定义返回值,(string memory)定义返回值为string
return name; //返回name的值
}
function setName(string memory _newName) public { //function 功能,setname功能名称,(string memory _newName)定义输入一个string类型的值,public定义范围
name = _newName; //输入_newname 赋给 name。
}
//应该添加什么修饰符取消f函数的警告?
function f(uint a, uint b) public pure returns (uint) { //定义一个名称为f的功能函数,输入为a,b,输入的类型为uint,范围为public,pure为修饰函数。
return a * (b + 42); //返回一个a * (b + 42)的值
}
}
//SPDX-License-Identifier: UNLICENSED pragma
solidity ^0.8.3; //版本号
contract study { //这是智能合约的开始,其中 study 是合约的名称。
uint studyData; //这是一个 uint 类型的状态变量,用于存储合约中的数据。
function set (uint d) public{
studyData = d;
}//这是一个 public 访问修饰符的 set 函数,用于设置 studyData 的值。该函数将传递的值 d 存储在 studyData 变量中。
function get () public view returns(uint){ return studyData;
}//这是一个 public 访问修饰符的 get 函数,用于获取 studyData 的值。该函数使用 view 访问修饰符来指示函数不会修改合约的状态,并且返回 studyData 变量的值。
}