我创建了一个合同,我从用户那里获取 2 个哈希并尝试比较它们,这反过来会给出一个布尔值 true 或 false。它在混音上效果很好,但是当我尝试在 Mist 上运行合约时,compareString 函数只显示一条消息“NO”。这是我的代码。
pragma solidity ^0.4.18;
contract Hash {
string fhash;
string comphash;
event Instructor(string _fhash);
event Instructors(string _comphash);
function setinstructor(string _fhash) public {
fhash = _fhash;
emit Instructor(_fhash);
}
function getinstructor() public constant returns(string){
return(fhash);
}
function setinstructors(string _comphash) public {
comphash = _comphash;
emit Instructors(_comphash);
}
function getinstructors() public constant returns(string){
return(comphash);
}
function compareStrings() public view returns (bool){
return sha256(fhash) == sha256(comphash)? true : false;
}
}